一、ResxManager

1、  资源文件编辑工具ResxManager,这个工具可以在一个界面中编辑所有语言的内容。

2、  可以新增、删除key。

3、  注意:如果是新建的Resx,一定要有一个key之后才可以编辑。

4、  地址:有两个版本,

单独程序:http://resxmanager.com/

vs插件:http://visualstudiogallery.msdn.microsoft.com/3b64e04c-e8de-4b97-8358-06c73a97cc68

虽然还有想一些瑕疵,感觉对编辑多语言还是很有帮助的。

二、对象Mapper工具

1、对象Mapper工具有好几种,比如:AutoMapper、EmitMapper、ValueInjecter,经过比较比较推荐ValueInjecter。

2、下面是测试截图,测试用的类包含16个基本类型、一个List类型,list类型对象的数据结构是测试类去掉List之后的结构。

测试类生成的对象中,包含10个list,所以还是能有一定的借鉴意义的。

先贴出测试类数据结构:

public class BigData
{
public long Id { get; set; }
public int Count { get; set; }
public string str1 { get; set; }
public string str2 { get; set; }
public string str3 { get; set; }
public string str4 { get; set; }
public string str5 { get; set; }
public string str6 { get; set; }
public string str7 { get; set; }
public string str8 { get; set; }
public string str9 { get; set; }
public string str10 { get; set; }
public string str11 { get; set; }
public string str12 { get; set; }
public DateTime CreatedTime { get; set; }
public DateTime UpdatedTime { get; set; } public List<BigDataItem> Items { get; set; }
}
public class BigDataItem
{
public long Id { get; set; }
public int Count { get; set; }
public string str1 { get; set; }
public string str2 { get; set; }
public string str3 { get; set; }
public string str4 { get; set; }
public string str5 { get; set; }
public string str6 { get; set; }
public string str7 { get; set; }
public string str8 { get; set; }
public string str9 { get; set; }
public string str10 { get; set; }
public string str11 { get; set; }
public string str12 { get; set; }
public DateTime CreatedTime { get; set; }
public DateTime UpdatedTime { get; set; }
}

下面是对手工、AutoMapper、EmitMapper、ValueInjecter、ValueInjecter使用DeepCloneInjectionde的运行时间对比(按照时间顺序)。

大家可以对比,ValueInjecter优势还是比较明显的,虽然和手工编码还有一定的差距,我感觉代码效率和编码复杂度的平衡来说,ValueInjecter还是不错的选择,一些Codeplex上的开源程序就在使用ValueInjecter.

3、ValueInject具体实现方式还在研究中,貌似不是直接使用反射也不是Emit。在部分源码中看到有TypeDescriptor这个类的使用,需要深入研究一下。

4、地址:https://valueinjecter.codeplex.com/

两个实用的工具推荐:ResxManager和ValueInjecter的更多相关文章

  1. 实用小工具推荐 OpenWrite

    [实用小工具推荐]给技术同学们推荐一款比较好用的工具,可以实现一稿多发,主流的技术渠道基本涵盖了:https://www.openwrite.cn/ 因为工作的关系,认识了很多做技术公众号的小伙伴,同 ...

  2. 实用工具推荐(Live Writer)(2015年05月26日)

    1.写博客的实用工具 推荐软件:Live Writer 使用步骤: 1.安装 Live Essential 2011,下载地址:http://explore.live.com/windows-live ...

  3. 推荐几个对Asp.Net开发者比较实用的工具 2

    推荐几个对Asp.Net开发者比较实用的工具.大家有相关工具也可以在评论区留言,一起努力学习. 作为程序员要有挑战精神,大家可以尝试一下这些工具. 已经有篇文章写到了vs的扩展工具,这里不再累赘,请查 ...

  4. 推荐几个对Asp.Net开发者比较实用的工具

    推荐几个对Asp.Net开发者比较实用的工具.大家有相关工具也可以在评论区留言,一起努力学习. 工具 1.Visual stdio Productivity Power tool:visual std ...

  5. 优秀工具推荐:两款很棒的 HTML5 游戏开发工具

    HTML5 众多强大特性让我们不需要多么高深技术就能创建好玩的网页游戏,同时证明了开放的 Web 技术能与任何其他在游戏开发中使用的技术竞争.正如标题所说,这篇文章推荐的几款很棒 HTML5 游戏开发 ...

  6. php语言基础语法与编程工具推荐

    php脚本语言,需要在服务器端执行,用浏览器返回HTML结果.在PHP中所有的语法都是如此,用户端是无法修改的,只有浏览权限. 一.php基础语法之输出方法 1.PHP中所有的脚本,可以放在文件中的任 ...

  7. 小萝贝控机大师工具推荐(一款在PC就能控制手机界面的工具)

    在一次写博客的过程中,要截取手机app上的几张图片,然后粘贴到博客里面去,不了解这个工具的时候,我就从手机上截图(使用其他的截图app或者使用手机自己的截图功能),然后再传送到电脑上,然后再放到博文中 ...

  8. 2015年最佳的12个 CSS 开发工具推荐

    CSS所能做的就是改变网页的布局.排版和调整字间距等,但编写 CSS 并不是一项容易的任务,当你接触新的 CSS3 属性及其各自的浏览器前缀的时候,你会发现很伤脑经.值得庆幸的是一些优秀的开发人员提供 ...

  9. ANDROID开发实用小工具

    分享一些 Android开发中的实用小工具,你有发现好工具吗? 来这里分享一下呗 一.find bugs 静态检查工具 http://findbugs.sourceforge.net/ FindBug ...

随机推荐

  1. Bug集

    1. Spring MVC 双请求问题 viewresolver一定要放在servlet-dispatcher.xml里,否则会导致在请求成功后以后渲染页面,然后又发一次请求的状况,最后导致页面无法显 ...

  2. clr via c# 读书笔记

    WOW64 WOW64 (Windows 位应用程序提供了 位的模拟,可以使大多数 位应用程序在无需修改的情况下运行在 Windows 位版本上. com对象 COM:The Component Ob ...

  3. 初窥Kaggle竞赛

    初窥Kaggle竞赛 原文地址: https://www.dataquest.io/mission/74/getting-started-with-kaggle 1: Kaggle竞赛 我们接下来将要 ...

  4. 关于《rsyslog+mysql+loganalyzer搭建日志服务器<个人笔记>》的反思

    关于<rsyslog+mysql+loganalyzer搭建日志服务器<个人笔记>>的反思--链接--http://www.cnblogs.com/drgcaosheng/p/ ...

  5. Linux多线程服务端编程一些总结

    能接触这本书是因为上一个项目是用c++开发基于Linux的消息服务器,公司没有使用第三方的网络库,卷起袖子就开撸了.个人因为从业经验较短,主 要负责的是业务方面的编码.本着兴趣自己找了这本书.拿到书就 ...

  6. MySQLdb操作mysql的blob值

    一般情况下我们是把图片存储在文件系统中,而只在数据库中存储文件路径的,但是有时候也会有特殊的需求:把图片二进制存入数据库. 今天我们采用的是python+mysql的方式 MYSQL 是支持把图片存入 ...

  7. 《第一本docker书》- 第一章笔记

    环境: Ubuntu 14.04.2 LTS (GNU/Linux 3.16.0-30-generic i686) 第一章: 1 Docker客户端和服务器 2 Docker镜像 添加一个文件,执行一 ...

  8. Groovy 处理 XML

    1. Parsing XML 1.1. XmlParser and XmlSlurper The most commonly used approach for parsing XML with Gr ...

  9. flex中下拉框的实现

    flex中下拉框的实现 <mx:ComboBox id = "combobox" dataProvider = "{deviceCodeType }" e ...

  10. 数据存储--沙盒sandBox

    默认情况下,每个沙盒必含有3个文件夹:Documents, Library 和 tmp 一.沙盒(sandbox)出于安全的目的,应用程序只能将自己的数据和偏好设置写入到几个特定的位置上.当应用程序被 ...