1.0 初步建立目录和项目
2.0 设置层之间的引用
IRepository引用 Model
Repository引用 Model,IRepository
IServices引用 Model,IRepository
Services引用 Model,IRepository,IServices
Site引用 Model,Common,IServices,WebHelper
WebHelper引用System.Web.Mvc,IServices,System.Web
Common引用:system.web,system.web.Extensions
3.0 在Model层 添加 ADO.NET实体数据模型
Dal层的 Repository项目引用 EntityFramework.dll(找Model层中的dll),System.Data.Entity
在 Repository项目里,新建类: BaseDbContext
内容:
using System.Data.Entity;//继承DbContext 需要该命名空间.
public class BaseDbContext : DbContext
{
public BaseDbContext()
: base("name=此处需要看App.Config") //见 <connectionStrings><add name="JKCRMEntities" /></connectionStrings>
{
}
}
删除Model层里的两个文件
4.0 各个父类的建立
IRepository层建立 IBaseRepository接口 -->内容见 IBaseRepository接口.txt
Repository建立类 BaseRepository -->内容见 BaseRepository类.txt (设置线程缓存,让一个线程里的所有dal共用一个EF容器)
IServices层 建立接口 IBaseServices-->内容见 IBaseServices接口.txt
Services层 建立类 BaseServices-->内容见 BaseServices类.txt
把BaseDbContext.cs等放入新建的base解决方案文件夹内.
5.0 T4模板的使用
测试-->找一个实体,分别建立 IRepository,IServices,Repository,Services或者直接利用 T4模板6个文件生成. 注意改T4模板内容中 edmx的位置.
建立控制器测试(注意构造函数)-->没有配置 autofac,会失败.
6.0 AutoFac的添加
把AutofacLibs拷到解决方案下.引用2个dll
在App_Start中建立类 AutoFacConfig,内容见 AutoFacConfig类.txt. 注意:需要更改命名3个命名空间.
在Global.asax中的最后注册 AutoFacConfig.Register();
7.0 项目配置
设置启动项 Site;设置连接webconfig字符串;设置 Services层和Repository层的生成位置。 ..\WLFHP.Site\bin\
测试是否Ok
8.0 其它
建立BaseController 引用system.web.mvc -->里面是各种IServices