Visual Studio 2012 中数据库优先实体框架模型的 MVC4 支架

2024-02-01

我在使用 Visual Studio 2012 时遇到问题,尝试添加带有脚手架的 MVC4 控制器。理想情况下,我希望在与我的 Web 应用程序分开的程序集中使用添加新项 - ADO.NET 实体数据模型(即不是代码优先)从数据库生成实体框架模型(edmx 文件等)。但是,当我设置它并使用“添加控制器”,指定“具有读/写操作和视图的 MVC 控制器,使用实体框架”并从我的 DatabaseModel 程序集中选择模型类和数据上下文类时,会弹出以下警报消息。

“Ifl.Payforit4.DatabaseModel.Mno”不是指定的一部分 'Ifl.Payforit4.DatabaseModel.Payforit4Entities' 类,以及 'Ifl.Payforit4.DatabaseModel.Payforit4Entities' 类不能 修改为添加“DbSet”属性 它。 (例如,“Ifl.Payforit4.DatabaseModel.Payforit4Entities” 类可能位于已编译的程序集中。)

无法修改该类是有道理的,因为它位于另一个程序集中,尽管在同一解决方案中,并且是通过 T4 自动生成的,但查看 Payforit4Entities 的自动生成代码,“DbSet”属性已经很明显地存在了。

    public DbSet<Mno> Mnoes { get; set; }

我还尝试过很多其他的事情。

  1. 将数据模型直接放入 Web 应用程序中
  2. 将模型类更改为数据库中的各种其他表,以防 Mno 类出现问题
  3. 将数据模型简化为一个简单的表
  4. 使用 Entity Framework Power Tools Beta 2 对 Code First 模型进行逆向工程。这产生了一组新的错误。我明白为什么它是测试版。
  5. 将 ADO.NET 数据模型代码生成策略从“无”更改为“默认”,以创建基于 ObjectContext 而不是 DbContext 的数据模型
  6. 关闭复数,因此属性名称为 Mno 而不是 Mnoes

他们都没有工作。唯一有效的方法是手动编写 Code First DbContext 派生类和 POCO。巧合的是,我发现的每个演示 MVC4 脚手架的示例都使用这种数据模型。有没有什么地方说 Code First 是唯一适用于 MVC4 脚手架的数据模型?有人设法在 Visual Studio 2012 中构建数据库优先 (.edmx) 数据模型吗?数据库足够复杂,我宁愿坚持数据库优先策略。

我可以看到,“代码优先”模型与“数据库优先”模型的脚手架必定存在一些差异。例如,前者具有 POCO 属性,保存由 KeyAttribute 指示的密钥,而后者则在 edmx 模型文件中保存该信息。这是 Entity Framework Power Tools 中逆向工程功能的基本原理吗?为了使用 MVC4 脚手架,我们是否期望从 edmx 文件转向逆向工程 Code First 模型?如果是这样,我们是否期望继续使用动态数据项目,直到实体框架电动工具完成?


技巧是首先编译您的解决方案,然后输入上下文类manually。不要从下拉列表中选择它,只需自己输入类名,它就会神奇地起作用;-)

看这里:ASP.NET MVC4 – 如何在 MVC 控制器中使用数据库优先 EF http://jefferytay.wordpress.com/2013/02/19/asp-net-mvc4-how-to-use-a-database-first-ef-in-a-mvc-controller/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Visual Studio 2012 中数据库优先实体框架模型的 MVC4 支架 的相关文章

  • 使用实体框架时是否应该使用部分类作为业务层?

    我正在开发一个使用实体框架的项目 使用EF生成的类的部分类作为业务层可以吗 我开始认为这就是 EF 的用途 我尝试使用 DTO 模式 很快意识到我只是创建了一堆映射类 这重复了我的工作 而且还导致更多的维护工作和额外的层 我想使用自我跟踪实
  • JQuery Mobile 与 MVC 的链接

    我正在使用 ASP NET MVC 3 和 Razor UI 设置 JQuery 移动网站 我正在生成我的链接 例如 a href See Group 2 a 假设我从 Home Index 访问它 我遇到的问题是 当我点击链接时 它会出现
  • 使用实体框架模型输入安全密钥

    这是我今天的完美想法 Entity Framework 中的强类型 ID 动机 比较 ModelTypeA ID 和 ModelTypeB ID 总是 至少几乎 错误 为什么编译时不处理它 如果您使用每个请求示例 DbContext 那么很
  • 表单身份验证 MVC4

    我正在尝试使用 MVC4 网站进行简单的表单身份验证设置 在App start FilterConfig cs中 public static void RegisterGlobalFilters GlobalFilterCollection
  • 参考装配错误

    我已经实现了 RoleProvider 类 在那里我创建了位于另一个程序集中的 Domain 类对象 我的程序集具有对该程序集的引用 错误 3 类型 System Data Entity DbContext 是在 未引用的程序集 您必须添加
  • 包含 ASP.Net Identity 2.0 UserManager.Users.ToListAsync 和 UserManager.FindByIdAsync 上的属性

    我正在尝试实现 Asp Net Identity 2 0 到目前为止 在以下人员的帮助下我做得很好这个博客 http typecastexception com post 2014 06 22 ASPNET Identity 20 Cust
  • 未找到 MSVCP110D.dll

    我正在尝试使用 SFML 制作游戏 我在 Visual Studio 2012 和 Windows 7 上完成了其中的一部分 我尝试在另一台使用 Windows XP 的 PC 上运行游戏 但出现错误 未找到 MSVCP110D dll 我
  • 如何在 MVC 应用程序中转置 Kendo UI 网格中的行和列?

    我在 MVC 应用程序中使用 Kendo Ui Grid 我希望在我的网格中显示多个国家 地区的统计数据 我从数据库检索数据的方式 我的网格将显示类似于以下内容的数据 Country Area Population GDP GDP Grow
  • 有没有办法让 DefaultModelBinder 在绑定到 List 时忽略空项

    我有一个场景 我想更改 DefaultModelBinder 绑定到枚举列表的方式的行为 我有一个枚举 public enum MyEnum FirstVal SecondVal ThirdVal 和一个模型类 public class M
  • 具有 SQL 代码的 C# 方法上的 Microsoft Fakes(垫片和/或存根)

    我正在尝试更多地了解单元测试 使用开箱即用的功能 我相信它是 MSTest exe 和 Microsoft Fakes 存根和垫片 我正在使用 Visual Studio 2012 Ultimate 和 Net 4 5 Framework
  • 在.NET MVC中,有没有一种简单的方法来检查我是否在主页上?

    如果用户从主页登录 我需要采取特定的操作 在我的 LogOnModel 中 我有一个隐藏字段 Html Hidden returnUrl Request Url AbsoluteUri 在我的控制器中 我需要检查该值是否是主页 在下面的示例
  • 如何在Azure Function的应用程序设置中定义providername属性

    我正在尝试在我的 Azure 函数中建立实体框架数据库连接 因此我需要在函数的应用程序设置中定义一个连接字符串 仅在 Azure 门户中添加一个以我的 DbContext 类名作为键的连接字符串会导致异常 因为连接到数据库时 provide
  • ASP.NET MVC 多线程

    我想在我的 asp net mvc 应用程序中实现这样的逻辑 user clicks a button gt server executes some time consuming logic in 15 threads i get dat
  • asp.net mvc 主要细节

    我想使用 ASP NET MVC Entity Framework 创建一个用于订单输入的网页 此页面包含订单和订单输入信息 对于每个订单 我可以有多个订单详细信息 如果您知道如何使用 ASP NET MVC Entity Framewor
  • 如何以一种形式发布两个或多个模型?

    我正在为一个项目开发互联网课程计划应用程序 该课程计划是根据以下模型构建的 使用数据库优先方法中的实体框架生成 public partial class Subject public int Id get set public string
  • VS 2010 Web应用程序中的ASP.NET Web Api CRUD操作

    我尝试在 VS 2010 Web 应用程序中进行 ASP NET Web Api CRUD 操作 但为什么结果没有从源表返回所有整行 这是我的代码 路线 Globax asax protected void Application Star
  • 从 MVC 控制器操作调用 javascript

    我可以调用 javascript 函数吗MVC 控制器动作 不是来自视图页面 并获取返回值 如何 我需要向服务器发出请求来自代码 cs 像这里一样使用 javascript 但这是aspx页面 function getInitData va
  • 关于实体框架上下文生命周期的问题

    我对 ASP NET MVC 应用程序中实体框架上下文的所需生命周期有一些疑问 让上下文在尽可能短的时间内保持活动状态不是最好的吗 考虑以下控制器操作 public ActionResult Index IEnumerable
  • 哪一条路?数据库优先、模型优先、仅代码?

    最近我通过Pro Entity Framework 4 0这本书学习了Entity Framework 现在 我想用EF来写项目 有了这些条件 哪种方式更好更灵活 我的观点是模型优先 但我想知道你的意见 thanks 读这个 EF 4 1
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数

随机推荐

  • 在 Java 11 上编译 Android 数据绑定的 JAXB 依赖项放在哪里?

    我正在使用 Android 数据绑定 虽然事情很简单 但运行得很好 但是 一旦我添加了BindingAdapter https developer android com reference android databinding Bind
  • 在 SQL Server 中使用开始/结束块和 Go 关键字?

    何时使用该指南有哪些指导原则BEGIN and ENDSQL Server 中的关键字 另外 到底是什么GO关键字做什么 GO 就像脚本的结尾 您可以有多个 CREATE TABLE 语句 并用 GO 分隔 这是一种将脚本的一部分与另一部分
  • 聚集索引列上的非聚集索引可以提高性能吗?

    在SQL Server 2005中 查询分析器多次告诉我在已经有聚集索引的表的主ID列上创建非聚集索引 遵循此建议后 查询执行计划报告查询应该更快 为什么同一列 具有相同排序顺序 上的非聚集索引比聚集索引更快 聚集索引包含表的所有数据 而非
  • 探测扩展时出现 GET net::ERR_FAILED 错误

    有一个特定的 Chrome 扩展程序 我想从中获取一个 PNG 文件XMLHttpRequest 如果启用了扩展 我想将 load 写入控制台 如果禁用扩展 我想将 error 写入控制台 它工作正常 但如果禁用扩展程序 Chrome 会在
  • 列出 GCP 帐户/组织的所有用户

    我在 GCP 中有一个组织 其中有多个项目 有没有办法列出所有项目用户及其角色 而不必逐个项目访问项目 我正在使用gcloud projects get iam policy PROJECTNAME 但列出单个项目的用户 我有几百个 Tha
  • Javascript:无法将 href 添加到列表项

    我正在尝试将新项目添加到列表项目中 但下面的代码没有将超链接添加到我想要的列表项 有人可以告诉我出了什么问题吗 HTML div ul li Ut enim ad minim veniam li li Excepteur sint occa
  • “Angular cdk Drag drop”用于将列表中的项目拖放到容器中(无序)

    我知道 cdk 拖放可以很好地处理列表 并且有很多示例 但我想做的是 一侧是列表 另一侧是容器 容器中的物品应该位于容器中的任何位置 并且可以由 x 和 y 轴固定 因此 当从列表中拖放到容器中的某个 x y 处时 该项目应保持该位置 请帮
  • ASP MVC5 身份用户抽象

    我想使用默认的 Identity 2 提供程序构建 N 轮胎 Web 应用程序 因此 我的数据层包含带有模型定义的纯 C 类 没有任何外部依赖性 但如果不添加 AspNet Identity 引用 就不可能将某些类链接到我的应用程序用户 我
  • 如何获取 iOS 框架测试目标并在虚拟应用程序中运行它?

    所以我遇到了一个问题 我的框架需要访问KeyChain 很好 但是在模拟器中运行时似乎失败了 挖掘它似乎是一个已知的问题xctest在这里做错事了 公平地说 错误是会发生的 在 Apple 开发者论坛中 对此进行了讨论 Right 这是库测
  • 验证两个表的唯一性

    我有一个Company and Archive具有相同表结构的模型 两种型号都有一个validates name uniqueness gt true验证 在 company rb 文件中 我在设置自定义验证时遇到问题 当我将记录添加到Co
  • Ruby 的 Object#taint 和 Object#trust 方法是什么?

    我正在阅读有关 Ruby 字符串方法的内容docs http www ruby doc org core 1 9 3 String html并遇到了这些方法 taint trust untaint untrust 我不知道它们是做什么的 我
  • BottomNavigationView:如何删除连字符标签

    实现 5 项 BottomNavigationView 始终显示标签 我使用以下方法
  • 如何在 extjs 中的网格页脚中添加总行数

    我想在网格页脚中添加总行数 我有商店中可用的总行记录 在网格中 用户选择降序排列 总计行显示为第一行 谁能告诉我如何避免这种情况 我将解释我的完整问题 例如 我有像 Target Target1 Target2 这样的网格视图 是从网络服务
  • Integer.parseInt(string) 实际上是如何工作的?

    最近被问到这个问题 不知道答案 有人可以从高层次解释Java如何获取字符 字符串并将其转换为int 通常这是这样完成的 初始化结果为 0 for each character in string do this 结果 结果 10 从字符中获
  • 如何用笛卡尔绘制波纹圆?

    I m looking for a way to plot a corrugated circle https www mypandakitchen com 1656 large default emporte pieces rond on
  • 扩展界面生成器中的属性检查器

    是否可以使用继承自 UIView 的自定义类的附加属性来扩展界面构建器的属性检查器 现在不行 Interface Builder 允许您通过 Interface Builder 插件为您的对象实现自定义检查器 不过 IB Kit 目前不支持
  • 如何从 ipython 启动twisted的reactor

    我需要从 ipython 中启动一个twisted reactor 以允许继续交互 Ipython 的手册页引用了twisted 但我无法理解应该如何继续 文档引用了 IPython kernel twistedutil 所以我的印象是它应
  • 在 ASP.NET core 中添加迁移时不考虑新的更改

    我和一个朋友正在作为队友参与 ASP NET Core 项目并使用以下工具共享数据github 每次从 who 中提取更改时github 应该删除Migration folder为了添加迁移而不会出现任何错误 否则 我们会收到以下错误 数据
  • 寻找第 N 个孪生素数

    我试图解决 SPOJ 上的问题 我们需要计算第 n 个孪生素数对 相差 2 的素数 n 可以大到 10 5 我尝试使用筛子进行预先计算 我必须筛选最多 10 8 才能获得最大的 n 个孪生素数 但时间限制很严格 2s 并且超时 我注意到人们
  • Visual Studio 2012 中数据库优先实体框架模型的 MVC4 支架

    我在使用 Visual Studio 2012 时遇到问题 尝试添加带有脚手架的 MVC4 控制器 理想情况下 我希望在与我的 Web 应用程序分开的程序集中使用添加新项 ADO NET 实体数据模型 即不是代码优先 从数据库生成实体框架模