我在VB.net中使用ASP.net网站项目,并为其添加了一个LINQ to SQL数据类,以便使用多个LinqDataSource控件。昨天我的项目工作正常,但昨晚关闭并在今天早上启动后我现在收到此错误:
编译错误说明:期间发生错误 编译服务此请求所需的资源。请 查看以下特定错误详细信息并修改您的来源 代码恰当。
编译器错误消息:BC30002:未定义类型“System.Data.Linq.Mapping.DatabaseAttribute”。
来源错误:
<Global.System.Data.Linq.Mapping.DatabaseAttribute(Name:="xxxx_pcf")> _
Partial Public Class PCFDataContext
Inherits System.Data.Linq.DataContext
此文件由Visual Studio 2010自动生成,但不会引发任何错误。我只在运行时收到错误。
在互联网上的其他地方,人们建议删除命名空间声明,只有我没有。
我还发现here有人说web.config文件中可能缺少对System.Data.Linq
的引用。不过我,我的web.config没问题。
另外here警告VS因为复数原因重命名你的课程 - 再次对我无效。
所以我被卡住了。
答案 0 :(得分:5)
当我在我的网站(.net 4.0框架)中使用LINQtoSQL(vb.net)作为第一个并将其推出到实时服务器时,我遇到了类似的问题。它在我的本地服务器上工作正常。
我所做的只是在我的web.config
中添加以下行<page>
<namespaces>
<add namespace="System.Data.Linq" />
<add namespace="System.Linq" />
</namespaces>
</Page>
<system.web>
<assemblies>
<add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>
</system.web>
它对我有用,值得一试我的朋友......
答案 1 :(得分:0)
它看起来只是VB的一个问题而C#不会遇到同样的问题。看看here。希望它有所帮助