我正在尝试学习 Asp.net Mvc,所以我正在尝试 本教程。
他们讨论了存储库模式以及如何轻松更改为另一种数据访问技术,而不仅仅是直接调用 Linq to Sql。
在控制器类中使用 LINQ to SQL 使得将来很难切换数据访问技术。例如,您可能决定从使用 Microsoft LINQ to SQL 切换到使用 Microsoft Entity Framework 作为数据访问技术。在这种情况下,您需要重写应用程序中访问数据库的每个控制器。
注意:在阅读本教程之前,我从来没有真正理解过界面是如何工作的,而且还不是 100% 清楚。我现在把它看作是一个类的某种“模板”。
在成功使用 Linq to Sql 之后,我认为尝试 Ado.net Entity Framework 会很好,因为我已经阅读了很多关于此的内容。他们说使用存储库模式可以轻松切换,所以我想我会测试一下。
我的问题是:我应该怎么做才能更改为 Ado.net EF?
这是我认为我应该做的。
- 添加 Movie.edmx 文件并配置它(添加我的电影表)。
- 编写一个基于 IMovieRepository 的新类,并可能将其称为 MovieEFRepository。
- 将控制器构造函数中的参数更改为 MovieEFRepository。这是我觉得奇怪的第一件事,因为在教程中他们说如果您更改为其他数据源,不使用存储库将迫使您更改所有控制器。既然我指定了 MovieRepository 类,我不需要更改每个控制器吗?
- 我认为我需要做的最后一个调整是更改视图。因为它使用的是由 Linq to Sql 设计器创建的 Product 类。我不确定我将如何做到这一点。我想我应该使用一些不依赖于 dbml 文件的对象?
如果我对 Asp.net Mvc 的看法有点简单,请原谅我。我是一名对 Asp.net 网络开发非常感兴趣的网页设计师。