加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-3 – MVC3 – 使用Entity框架设置Controller时出错

发布时间:2020-12-16 06:45:54 所属栏目:asp.Net 来源:网络整理
导读:我经历的步骤…… 添加新的ADO.NET实体数据模型从DB生成将新连接字符串设置为adventureworks db下一个选择表“DatabaseLog”完.验证DatabaseLog在edmx视图中可见. 右键单击控制器添加控制器 使用实体,具有读/写操作和视图的TemplateController 模型类 Advent
我经历的步骤……

>添加新的ADO.NET实体数据模型>从DB生成>将新连接字符串设置为adventureworks db>下一个>选择表“DatabaseLog”>完.验证DatabaseLog在edmx视图中可见.
>右键单击控制器>添加控制器
>使用实体,具有读/写操作和视图的TemplateController
>模型类
AdventureWorksDWEntities
>背景
新数据上下文>接受默认名称
>查看
剃刀
>单击“添加”.

产生错误:
“无法检索’DatabaseDocumentor.models.AdventureWorksDWEntities’的元数据.

> System.Data.Edm.EdmEntityeType:EntityType’AdventureWorksDWEntities’没有定义键.定义此实体类型的键.
> System.Data.Edm.EdmEntitySet:EntityType:EntitySet’AdventureWorksDWEntities’基于类型’AdventureWorksDWEntities’,没有定义键.

我再次尝试使用AdventureWorks(而不是AdventureWorksDW),这一次它起作用了.但是,我仍然不明白在生成控制器时要选择什么.我有3个选择:

模板
在这里,我使用Entity选择了具有读/写操作和视图的Controller.这很容易理解.我希望为我生成表格,所以我选择了这个选项.

模型
这就是我想要建模的东西.在这种情况下,我想模拟“部门”表.所以我选择了部门.

上下文
这个对我来说真的很模糊.我选择了*姓名*实体.这是web.config连接字符串区域中的值.为什么我需要选择我的连接字符串作为上下文?我只在C#中将上下文称为“我用来访问我的实体的对象”.所以,这里我很难想象.我是否需要始终为上下文选择连接字符串?

解决方法

从下拉列表中未正确选择上下文时,可能会发生此问题.上下文应该是存储在web.config中的值

<add name="NamedEntitiesCs1"

它还包含您要生成的模型.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读