关于* Real World *开发情况的任何MVC 3教程?

时间:2011-02-06 16:21:29

标签: stored-procedures asp.net-mvc-3

这里的MVC总noobe但是很长时间的网络开发者 - 10年以上。 MVC 3(及早期版本)的教程非常棒,但与往常一样,它们在作业类型场景中缺乏实质性。

例如,您经常发现自己处于从头开始创建新数据库且没有存储过程的情况,这样您就可以实际使用EF Code-First。我不了解你,但在我的职业生涯中从未如此。

通常的情况是,您正在创建一个新应用程序或使用新功能增强现有应用程序,该应用程序将连接到具有大量存储过程,用户定义函数和视图的现有非常成熟的数据库,您需要管理层或时间限制使用它。当然,您可能会创建一些新表,但它们通常会连接到现有表,或者至少您的应用程序必须查询现有表以获取某些数据。

要看到基于该场景的教程,那就是它的重量值很高。特别是存储过程场景。

感谢您的任何建议

1 个答案:

答案 0 :(得分:3)

大多数早期示例(例如原始NerdDinner)都基于Linq to Sql或Entity Framework(没有CodeFirst)。由于CodeFirst是“新热点”,因此大多数最新的例子都使用它。

然而,问题的有趣部分是它突出了一个重要的观点:“无关紧要”。您的数据访问策略(EF,EF代码优先,NHibernate,L2S,原始SQL)与MVC完全无关。我并不是说它不重要,我的意思是MVC在这方面根本没有对你施加任何限制。

您通常(在设计良好的MVC应用程序中)传递您的控制器接口,这些接口允许它们调用各种类型的数据访问方法(或者可能是另一层间接服务,这些服务在访问存储层之前执行其他操作)。数据访问的实现,如果它使用像EF或Nhibernate这样的ORM,那么将有机制让你使用某种查询语法(例如LINQ)或调用存储过程(可能在所有主要的ORM中使用Iv) 'e used)或者如果hte情况需要它来推送原始SQL。