使用sdf文件时,Linq to SQL出现异常

4

我已经用一个SDF本地数据库文件建立了一个项目,并试图使用LINQ To SQL(“.dbml”)文件访问它。我已经使用sdf文件提供的连接字符串,并可以轻松实例化对象:

thisDataContext = new MyDataContext(GetConnectionString());

然而,每当我尝试从中获取任何信息时,例如:
var collection = (from MyObject p in thisDataContext.MyTable select p);

我遇到了错误 -
"The table name is not valid. [ Token line number (if known) = 2,Token line offset (if known) = 14,Table name = Person ]"
我正在使用Visual Studio 2008 SP1 .Net 3.5和SQL 2008 CE。
我知道类似的问题在SQL 2005 CE中发生过,并发布了一个热补丁,但我认为这个版本在发布之前应该已经修复了这个问题。
有人知道如何解决这个问题吗?
谢谢
1个回答

10

在 Linq to Sql 创建的对象的表属性中去掉 "dbo"。

例如:

[Table(Name="dbo.Orders")]
class Order
{

}

将其改为:

[Table(Name="Orders")]
class Order
{

}

谢谢 @BFree,那个方法非常好用。我已经寻找修复方法有一段时间了。 - Ben

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接