2011-06-16 54 views
0

当我添加一个强类型视图时,我看到了模型类下拉列表中列出的实体。但是,如果我选择一个实体和脚手架,比如说List,我会得到一个运行时错误未将对象引用设置为对象的实例。是否可以使用EntityObject直接为各种脚手架生成视图?

在过去的项目中,我创建了一个使用CRUD调用LINQ的服务层。然后我在我的Controller中使用这个服务,并从生成的服务类手动创建视图。如果MVC为我做了这一切,那将会容易得多。

是否可以直接从继承EntityObject的具体类创建脚手架视图?

回答

1

简单的回答:是的。

我只是试着下面的测试案例...

新建项目

创建EDMX

构建

添加控制器(读/写使用实体框架

操作和视图

挑模型类和上下文(通常后缀'实体'的东西

点击添加

运行 - 它的工作原理

编辑:加入MVC脚手架太...

开包经理

安装,包装MvcScaffolding

添加控制器(MVC脚手架控制器使用EF COde的读/写动作&)

构建和运行:也适用。

+0

我不确定你使用包管理器来安装MvcScaffolding是什么意思。是否需要在基本MVC 3软件包之外安装?考虑到我已经有脚手架的选项,并看到我的实体列出不应该已经安装?我的测试用例与您的测试用例类似,但不起作用。任何想法为什么我会得到一个对象引用错误?我尝试了上下文对象和表示表的实体。 – 2011-06-17 16:10:36

+0

我想我知道我做错了,以获得对象引用错误。我没有使用上述过程生成控制器。当我尝试生成控制器时,出现错误。对于上下文对象,我得到“Edm.EntityType:AventureworksDWEntities'检测到一个或多个验证错误”,并且它说没有为'AdventureworksDWEntities'定义的密钥。 – 2011-06-17 16:17:04

+0

当我尝试表实体时,我得到“无法检索DatabaseDocumentor.Models.DatabaseLog的元数据”。该类型未映射。 – 2011-06-17 16:17:48