使用MVC4,Ninject,EF,Moq,构建一个真实的应用电子商务SportsStore(一)
| 工程名 | VS工程模板 | 目的 |
| SportsStore.Domain | Class Library | 域Entities和logic; 使用Entity Framework?創建一個repository,并將其設置為一個持久層。 |
| SportsStore.WebUI | ASP.NET MVC 4 Web Application | controllers and views |
| SportsStore.UnitTests | Unit Test Project | unit tests |
| 工程名 | 工具依賴 | 工程依賴 | 微軟引用 |
| SportsStore.Domain | Entity Framework | None | System.Web.Mvc System.ComponentModel .DataAnnotations |
| SportsStore.WebUI | Ninject Moq | SportsStore.Domain ? | None |
| SportsStore.UnitTests | Ninject Moq | SportsStore.Domain SportsStore.WebUI | System.Web.Mvc System.Web Microsoft.CSharp |
我們現在還沒有添加任何綁定,但是,當我們需要時,能使用 AddBindings 方法去添加. 現在,我們需要去
告訴 MVC 我們打算使用 NinjectController class 去創建Controller對象,要實現這一點,請打開SportsStore.WebUI工程的Global.asax.cs?文件,添加代碼: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Http; using System.Web.Mvc; using System.Web.Optimization; using System.Web.Routing; using SportsStore.WebUI.Infrastructure;namespace SportsStore.WebUI {// 注意: 有關啟用 IIS6 或 IIS7 經典模式的說明,// 請訪問 http://go.microsoft.com/?LinkId=9394801public class MvcApplication : System.Web.HttpApplication{protected void Application_Start(){AreaRegistration.RegisterAllAreas();WebApiConfig.Register(GlobalConfiguration.Configuration);FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);RouteConfig.RegisterRoutes(RouteTable.Routes);BundleConfig.RegisterBundles(BundleTable.Bundles);//Added by wangzhiyue //We need to tell MVC that we want to use the NinjectController //class to create controller objectsControllerBuilder.Current.SetControllerFactory(newNinjectControllerFactory());//Added end AuthConfig.RegisterAuth();}} }啟動域模塊
現在我們將要啟動域模塊,在MVC應用中應用領域模型,能使每一件事情都變得完美,因此,域 也就必然 是啟動應用的最完美的地方。因為我們要做的電子商務應用,所以,我們需要一個產品,這是在明顯不過的事了。右擊我們剛剛建立的Entities文件夾,然后新建一個C#類,命名為Product ,代碼如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace SportsStore.Domain.Entities {public class Product{public int ProductID { get; set; }public string Name { get; set; }public string Description { get; set; }public decimal Price { get; set; }public string Category { get; set; }} } 注意這個public關鍵字,因為我們將域模型分離為獨立的工程,所以將訪問關鍵字定義為public,你可以不 這么做,但這樣做有助于模塊的分離,使項目層次鮮明、簡潔。 如果你覺得從我的文章中學到了知識,那么請繼續關注我續篇!轉載于:https://www.cnblogs.com/bzwang/archive/2013/05/31/MVC4_Ninject_EF_Moq.html
總結
以上是生活随笔為你收集整理的使用MVC4,Ninject,EF,Moq,构建一个真实的应用电子商务SportsStore(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DataGrid多行数据的展示和编辑(6
- 下一篇: NYOJ--2