.NET平台开源项目速览-最快的对象映射组件Tiny Mapper之项目实践
晚上瀏覽博客園 看到一篇非常實用的博客:.NET平臺開源項目速覽(14)最快的對象映射組件Tiny Mapper,花了10分鐘簡單了解了一下。
看評論也是挺有價值,同時也看到許多新手同學問道在實際項目中使用的情況。
下面就原作者的代碼的基礎上略作調整,闡述一下在實際項目場景中的使用:
第一步:了解類庫方法:TinyMapper 主要有兩個函數:
TinyMapper.Bind<T1, T2>();//綁定映射關系
TinyMapper.Map<T>(obj);//從對象獲取想要的對象
第二步:初始化Mapping設置
?說明:類似的Mapping設置無非兩種模式:代碼靜態對象初始化模式,xml配置模式,很榮幸TinyMapper支持的是靜態字典。
說明:以上mapping映射中,針對于原作者的代碼,額外添加了:由PersonDto=》Person的映射關系。
T GetMapObject<T>(object obj) where T:class 的作用會在后面的代碼中體現出來。 簡單一個方法,威力不可小噓~~第三步:DtoModel -》Model
?從數據庫模型映射到領域模型:
? var p = TinyMapContext.GetMapObject<Person>(personDto);?
?
第四步:Model-》DtoModel
?從領域模型到數據庫模型:
?var personDto = TinyMapContext.GetMapObject<PersonDto>(person);
?
第五步:List<Model>=>List<DtoModel> 或者List<DtoModel>=>List<Model>
?
特別說明:對于獲取列表類型的對象,不需要在靜態初始化映射中額外添加 IList類型的對象。?TinyMapper會自動按照"映射過的基礎類型"動態的幫你獲取想要的數據。
本文的代碼:示例
說明:代碼淺顯易懂,然人非完人,編碼不規范的地方、手誤、或代碼存在缺陷、或嚴重性能問題,希望園友們批評指正。
?
? ? Tiny Mapper官方網站:http://tinymapper.net/
? ? github項目地址:https://github.com/TinyMapper/TinyMapper
原文地址:http://www.cnblogs.com/cdemo/p/5457065.html
.NET社區新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關注
總結
以上是生活随笔為你收集整理的.NET平台开源项目速览-最快的对象映射组件Tiny Mapper之项目实践的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ASP.NET跨平台实践:无需安装Mon
- 下一篇: 使用VS Code 从零开始开发并调试.