一:创建POCO实体
工厂表FactoryEntity,关联企业表CompanyEntiry,company_id关联t_pm_company表
/// <summary> /// 企业表 /// </summary> [ManyToOne(Name = "CompanyEntity", ClassType = typeof(CompanyEntity), Lazy = Laziness.Proxy, NotFound = NotFoundMode.Ignore, Column = "company_id", Unique = true, Insert = false, Update = false)] public virtual CompanyEntity CompanyEntity { set; get; }
二:定义Dao增删改查的接口,实现Dao增删改查的接口
配置DAL.XML
<object id="companyDao" type="PCITC.IMMC.PM.DAL.CompanyDao,PCITC.IMMC.PM.DAL"> <constructor-arg name="sessionFactory" ref="sessionFactory" /> </object>
三:定义BLL里的Entity
四:定义BLL增删改查的接口,实现BLL增删改查的接口
五:配置映射AutoMapper
public static Entity.PMEntity.FactoryEntity ToPoco(this ExEntity.PMEntity.FactoryEntity entity) { var result = Mapper.DynamicMap(entity, typeof(ExEntity.PMEntity.FactoryEntity), typeof(Entity.PMEntity.FactoryEntity)); return (Entity.PMEntity.FactoryEntity)result; }
六:定义Service增删改查的接口,实现Service增删改查的接口
七:配置BLL.XML
<!-- 工厂 --> <object id="factoryBasicData" type="PCITC.IMMC.BasicData.FactoryBasicData,PCITC.IMMC.BasicData"> <property name="factoryBll" ref="factoryBll"/> </object> <object id="factoryBll" type="PCITC.IMMC.PM.BLL.Classes.FactoryBll,PCITC.IMMC.PM.BLL.Classes"> <property name="factoryDao" ref="factoryDao"/> </object>
八:配置Controller.XML
<!--******************************************工厂模型Controller层注入******************************************************--> <object id="factoryController" type="PCITC.IMMC.UI.Areas.PM.Controllers.FactoryController, PCITC.IMMC.UI" singleton="false"> <property name="factoryBasicData" ref="factoryBasicData" /> </object>
注意:配置文件的object节点的id属性,property 的name,ref属性,首字母要小写。否则依赖注入会失败。
九:view里调用action,controller实现查询返回json数据给view
<div id="datagrid1" class="mini-datagrid" style="800px;height:280px;" allowresize="true" url="@Url.Action("GetPageListFactory")" idfield="id" multiselect="true">
public JsonResult GetPageListFactory(int pageIndex, int pageSize, string sortField, string sortOrder, string Name, string StdCode, string InUse) {
FactoryEntity model = new FactoryEntity();
long totalCout = 0; IEnumerable<ExEntity.PMEntity.FactoryEntity> models = factoryBasicData.GetPageList(pageIndex + 1, pageSize, sortField, sortOrder, model, ref totalCout); return Json(models); }