3

我将使用 ASP.NET MVC3、Linq to Sql 类而不是 Entity Framework、MS SQL Server 2008 pro 而不是 express 来实现 MvcMusicStore。

我从mvcmusicstore.codeplex.com获得了教程

我使用 Linq to Sql 类,Datacontext 是 MvcMusicSrotedataContext。当我尝试使用它创建一个新类时

图片

当我单击添加按钮时,它在新窗口中显示错误错误:'不支持的上下文类型'

那么,你能帮我解决这个问题吗?谢谢你。

4

2 回答 2

2

内置的 MVC 脚手架不支持 Linq to SQL——您必须改用实体框架。(或者不使用脚手架,手动构建自己的控制器/动作逻辑。或者使用支持 Linq to SQL的脚手架插件。)

于 2012-09-24T05:19:09.983 回答
2

我遇到了与 EF 相同的问题。我正在使用 VS 2012。

背景:

我的情况的原因是..这个自动生成过程(脚手架)似乎不承认部分类的概念。

我使用了模型优先的方法,并且我使用了实体的继承。例如:实体“B”和“C”继承自“A”</p>

所以在我生成的从“DbContext”继承的模型类“DataModelContainer”中,没有“DbSet”和“DbSet”的定义,即:以下两行不存在

public DbSet<B> B { get; set; }
public DbSet<C> C { get; set; }

生成了“DataModelContainer”类我一个分部类,所以我完成了另一部分,使用分部类的概念。这对脚手架来说是个问题。

解决方案

我的解决方法是,刚刚删除了我手动添加的部分类。并将“DbSet”和“DbSet”的定义添加到自动生成的类中。这个解决方案的问题是,当我重新生成模型类时,我必须重复同样的事情。

于 2013-06-27T04:45:13.523 回答