我现在正在自学 MVC4(多年来一直在做网络表单),我很沮丧 - 但不是 MVC,它非常好。实体框架是……嗯
我正在使用VS2010。
问题
我们有一个真实的数据库,你知道用外键之类的东西标准化。但是我为 Entity Framework 找到的每个示例都是直接指向表格的,但是我们很少有一个直接的表格拉出侧填充下拉列表等。我们所有的前端调用都命中了一个存储过程(多么古老的学校!脏话已删除)
我喜欢 MVC 的模型架构,您可以在其中定义来自数据源的数据的属性 - 显示名称、范围、数据类型。等等。所以我绝对想保留这个。
Entity Framework 和 MVC 不想在这个场景中发挥出色。我创建了我的 edmx 文件(仅限 SP),为 SP 导入了我的函数,一切都很好……直到现在。
无法从 edmx/designer 创建控制器 - 输入控制器名称,选择使用 EF 读取的 MVC 控制器,选择作为功能名称_结果的模型类,并为上下文选择 ...实体名称。FAIL 无法检索元数据
好的,所以现在我尝试 EF 5.x DbContext Generator,更新文件名和繁荣我有一个模型和上下文 - 太棒了,现在我可以做很酷的 MVC 的东西,让我们重建网站......哦,恐怖 - 一切都有之前已经定义了。
我尝试在不同的文件夹中生成 edmx 和/或在 DBContext 生成器之后将其删除,但仍然无法创建 Controller。
'blah' is not part of the specified 'Context' class, and the 'Context' class could not be modifed to add a 'DbSet' property to it. (For example, the 'Context' class might be in a compiled assembly.)
如果我手动添加 DBSet,我将无法检索元数据 - 我假设这是因为它无法连接到数据库。我不知道在哪里告诉它使用 web.config 中的连接字符串。- 如果这是问题
我的 MVC 对更光明未来的希望已经死去。
我错过了什么?
我没有嫁给 EF,所以如果有更好的方法来访问数据库(无需从头开始编写所有代码),我会在这里倾听。
谢谢