【问题标题】:.Net MVC Database first model with stored procedures.Net MVC 数据库第一个带有存储过程的模型
【发布时间】:2015-11-05 10:06:48
【问题描述】:

我正在 VS 2013 中开发一个 MVC5 Web 项目,我必须使用一个已经存在的数据库及其存储过程,所以我期待使用实体框架数据库优先方法来帮助我对类进行建模。

我的问题是,我应该使用 EF 直接从表中创建类(模型)吗?我的意思是我的类应该完全按照它们的方式表示数据库中的表吗? - 鉴于某些存储过程返回来自不同表的不同属性的组合,我对代码上的类应该准确表示什么感到困惑。

我还想拥有自己的表单来让用户上传和阅读他们的信息,所以搭建视图来创建读取/更新/删除对于这项任务来说并不方便,是吗? 谢谢!

【问题讨论】:

    标签: c# .net asp.net-mvc stored-procedures scaffolding


    【解决方案1】:

    如果是代码优先,那么您可以使用 EF 工具从现有数据库中为您搭建数据库。如果它首先是数据库,那么无论如何都会为您生成所有数据库模型,并且每当您更新数据库时,模型都可以更新以反映您所做的更改。

    如果您首先将存储过程用于代码,则需要为每个存储过程创建对象,以便可以将返回值映射回对象。这些应该与以类型和命名返回的数据完全匹配:

    this.Database.SqlQuery<YourEntityType>("storedProcedureName",params);
    

    至于让你的观点为你搭建脚手架,我认为你应该一次迈出一步,看看什么对你的用例有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多