DataContext在动态数据项目中不存在?

时间:2010-05-28 22:05:43

标签: sql linq dynamic-data datacontext

这真令人讨厌......而且我知道它非常简单...... 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文件。

2 个答案:

答案 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 });