2010-07-08 359 views
0

最近我读过,并从Pro ASP.NET MVC Framework实现的例子80%,这似乎是作者们只给了基础。阅读完这些后,我确实能够使用ASP.NET MVC构建Web应用程序。但这只是基本的应用程序。我发现最令人困惑的是,作者在开始时强调模型作为MVC应用程序的主要组件,但后来完全忘记了这一点,重点关注视图,帮助器方法,控制器,测试(我花了更多的时间为测试编写代码,而不是应用程序本身),Web安全性,第三方软件更好地完成任务,但没有正确解释模型在ASP.NET MVC中的位置。在这本书中,最大的例子,我会归类为模型的代码,完全在另一个项目放置,而不是一个单一的文件是在型号命名空间中创建。最佳实践

这里是我觉得是构建使用MVC应用固体需要100%的事情:

  • 适当的验证,模型侧。我在互联网上的很多例子中都看到它使用注释完成。在哪里可以找到关于用于ASP.NET MVC数据验证的注释的综合文档?
  • 最佳实践模型中的代码组织。我可能有许多需要定义的实体/类。我应该创建单独的文件吗?我应该知道ASP.NET MVC框架中是否有任何接口或有用的基类?
  • 是否应HTML字段名称来使用普通的HTML,或在模型中,使用注释在视图中定义? ASP.NET MVC中模型的角色在哪里结束?
  • 什么是使用ORM工具与ASP.NET MVC模式的最佳实践?如果DataContext中断,应该如何进行更新?应该在哪里设置实体的可更新属性?在传递给模型进行更新之前,在控制器中?或者在模型中?

回答

1

该模型是你的业务逻辑和业务对象。许多大型应用程序都将“模型”与Web应用程序完全分开。如果你有多个前端(手机,窗口,网络等)到你的应用程序,你应该能够在每个使用相同的模型。

例如,在我们的应用程序(〜250点意见),我们有:

Web App (strongly typed views, controllers) 
--- 
ServiceLayer  |-| 
RepositoryLayer |-|These 3 projects compose the "model" 
DataAccess (ORM) |-| 
--- 
Database 
+0

我读过更多的话题。意识到没有确切的“最佳实践”,正如我所预料的那样。然而你所描述的很多是我们如何得到另一个应用程序的工作。它现在是数据访问层,业务逻辑层,服务层。感谢您的回复 :) – AlexanderMP 2011-10-10 23:39:12