我正在使用脚手架从数据库模型构建控制器。
后端的数据库是SQL Azure,但我不确定这是否重要。
我输入了连接字符串,并进行了测试,并且可以正常工作。我向我的模型添加了一个新的ADO.Net实体数据模型,它创建了映射,当我打开创建的模型时,我可以查看表结构和FK,看起来是正确的。
我构建了解决方案,因此可以使用新模型。
我确保拥有最新版本的Entity Framework,并从NuGet下载了MvcScaffolding。
当我使用Entity Framework添加具有读/写操作和视图的新控制器时,我收到以下错误:
未映射“Website.Models.App.Application”类型。 使用Ignore方法或NotMappedAttribute数据批注检查未明确排除类型。 验证类型是否已定义为类,不是原始类,嵌套类还是通用类,并且不从EntityObject继承。
当我尝试使用MvcScaffolding添加相同的控制器:具有读/写操作和视图的控制器,使用EF数据访问代码时,我不会在此步骤中收到错误,但是当我导航到新的索引视图时控制器我得到同样的错误。
有关导致此错误的原因的任何想法?我已经长期寻求解决方案,但一切都空了。谢谢。
答案 0 :(得分:1)
安装Net DbContext Generator(如果Visual Studio 2010中的联机模板不可用)
答案 1 :(得分:0)
在实体设计器(.edmx文件)中,右键单击空白区域,单击“添加代码生成项”,选择“ADO.NET DbContext Generator”为其命名,单击“添加”。 >>不记得你为什么要这样做:-(但它为我解决了同样的问题。
答案 2 :(得分:0)
您可能在主类中嵌套了您的类:
static void Class main(string[] args)
{
public Class YourClass() // This is the wrong location, it's nested in the main class
{
...
}
}
public Class YourClass() // This is the correct location
{
...
}