【问题标题】:Conceptual questions on the ASP.NET MVC 3 and Entity Framework/MySQL interface关于 ASP.NET MVC 3 和 Entity Framework/MySQL 接口的概念问题
【发布时间】:2011-03-26 15:34:50
【问题描述】:

我现在决定试用 ASP.NET MVC 3。 然而,我的主机提供商只支持 MySQL,因此我必须弄清楚如何将 MVC 3 与 MySQL 一起使用。

我还决定,如果可以避免的话,我不想做任何 SQL 代码,而且我也想要 O/RM 而不需要太多努力。我知道实体框架实际上会在很大程度上帮助我完成这项工作。

我一直在尝试使用框架提供的数据库优先、模型优先和代码优先的各种方法来使用 EF。 到目前为止,我运气不佳,而且我发现可用的示例都使用了非常不同的方法,这让我很困惑。

我可能会首先寻求有关正确理解一些概念的指导。 首先,Model(在 MVC 中)实际上更像是一个 ViewModel,它在 Properties 方面代表了一些东西(Users、Posts 等),它或多或少是简单的类。 IE。模型是将数据库中的数据映射到对象(O/RM)的地方。我说的对吗?

存储库是一个包装器,它封装了为模型检索数据的特定方式。例如,DatabaseRepository 或 FakeTestRepository。 我应该在我的 MVC 项目中有一个存储库,还是每个数据库表都有一个存储库,这样我就有一个 UsersRepository 和 PostsRepository? 存储库应该是自己的模型,而不是模型,还是与单个模型绑定(这样 UsersRepository 是 UsersModel 的一部分)?

我尝试使用 EF 的模型优先方法,并且对于一个简单的测试,我只是创建了一个空模型并添加了通过一对多关系关联的实体“作者”和“指南”。 然后,当我在 Visual Studio 2010 中“从模型生成数据库”时,我得到了相应的 sql 代码。我希望在 MySQL 中创建这个数据库。我怎样才能做到这一点?

是否有一些带有 MySQL 和 O/RM 的 MVC 3 代码示例,其中演示了如何创建小型站点?

谢谢。

【问题讨论】:

    标签: entity-framework asp.net-mvc-3


    【解决方案1】:

    关于 EF Model First 方法:查看this Tips & Tricks article。我们已经在其中描述了这种常见情况(它是特定于 Oracle 的,但 dotConnect for MySQL 包含“Devart SSDLToMySQL.tt”模板)。
    至于其余的问题 - 没有明确的答案。选择更适合您的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-10
      • 1970-01-01
      • 2011-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-31
      • 1970-01-01
      相关资源
      最近更新 更多