这真令人讨厌......而且我知道它非常简单......
1.我创建了一个新的动态数据项目。
2.我添加了一个LINQ-to-SQL类,并将一些表拖放到类中。
3.我打开global.asax.vb并取消注释该行:
DefaultModel.RegisterContext(GetType(YourDataContext), New ContextConfiguration() With {.ScaffoldAllTables = True})
我删除了YourDataContext并将其替换为我的LINQ-to-SQL类中的DataContext:
DefaultModel.RegisterContext(GetType(NorthwindDataContext), New ContextConfiguration() With {.ScaffoldAllTables = True})
然后我尝试调试/构建/等。并收到以下错误:
未定义类型“NorthwindDataContext”
为什么没有定义?似乎它没有意识到我创建了DBML文件。
答案 0 :(得分:1)
这是一个非常奇怪的问题,我仍然不确定我是否完全解决了这个问题。但是,这是我认为我学到的东西: 1.如果要在VS2010中创建新项目,则必须将LINQ-to-SQL DBML文件放在根项目目录中。 2.如果要在VS2010中创建新网站,则必须将LINQ-to-SQL DBML文件放在新创建的App_Code目录中。 3.如果将它放在错误的位置,请废弃项目并重新开始 - 即使将文件移动到正确的位置或在正确的位置重新创建它们,它似乎也不起作用。 戴夫。
答案 1 :(得分:0)
你的项目是否编译?我猜你错过了数据库上下文的命名空间。像这样:
model.RegisterContext(typeof(MyApp.MyNamespace.NorthwindDataContext),
new ContextConfiguration() { ScaffoldAllTables = true });