[分享+升星散分]使用 PropertyInfo反射 让你省写一半的重复代码上个星期,到了一星。终于到了,自己天天抢分,
[分享+升星散分]使用 PropertyInfo反射 让你省写一半的重复代码 上个星期,到了一星。终于到了,自己天天抢分,无奈技术有限。 抢了将近一年,到了一个小星星。 在坛子里和大家一起进步。真的很开心。 17号 也就是周六 参加了博客园的上海俱乐部活动,围观了老赵。 听到了老赵的演讲, 真的很犀利。 他的总结观点是 :java一直在模仿c# 而且java比c#简单易学。还建议大家不要学java 我挺认同他的观点。大家可以去他的博客看看。 下面是我刚写的博客,使用 PropertyInfo反射 让你省写一半的重复代码 传送员 欢迎大家拍砖。 本人90年的 现在上海浦东上班 开发不到一年 希望能和大家多多认识,多多交流。[解决办法] dddddddddddddddddddddddddddddddddddddddddd[解决办法] java一直在模仿c# 而且java比c#简单易学。还建议大家不要学java[解决办法] 不错,很实际的一个代码! 恭喜升级![解决办法] 学习。。。[解决办法] 我不同意这位老赵同学的话[解决办法] dingdingding[解决办法]
探讨 我不同意这位老赵同学的话[解决办法] 我不同意这位老赵同学的话,我到觉得恰恰相反
[解决办法] 顶顶顶顶顶顶。。。。。。。。。。
[解决办法] 呵呵,先来支持下楼主升星了。
不过,虽然我没玩过Java。
貌似我以前一直都听别人说,c#抄Java的?
[解决办法] 搞什么语言之争
虽然我没用过java,但这话从老赵嘴里说出来感觉不舒服。
[解决办法] 探讨 引用: 呵呵,先来支持下楼主升星了。 不过,虽然我没玩过Java。 貌似我以前一直都听别人说,c#抄Java的? 我和你一样 没学过java 但是 老赵作为一个MVP 熟悉java 精通c# 的人 肯定比我们看的清楚[解决办法] 各有各的观点
[解决办法] 这么小。。支持下
[解决办法] 顶~~~~~~~
[解决办法] 都看你升星好几天了....
[解决办法] 帮顶下。。。。。。。。。。。。。。。。。。
[解决办法] 如果船上的水手不具有航海学里关于星象的知识,那他就会把一个很有才能的舵手看成是只会抬头看星星的傻子。
[解决办法] 说出了很多人的心声
[解决办法] 编程语言是在发展的。
C# 的出现 就是因为 Java 的关系, ms 觉得 Java 是自己产品最大的竞争对手
还推出了 J# 来吸引部分 java 开发者。
C# 的设计 很多都是吸收 java 的 ,在 C# 2.0 之前 一直在模仿 java
但现在 java 已经没落了 , 作为 java Fans 我很无奈 ,但这是不争的事实
引用 James Gosling 的话,So long, old friend...
现在我很少关注 java , 是否java 现在 在模仿 C# ,我没有发言权
[解决办法] 无非是工具,我对语言没有偏见。只不过是C#接触的多点儿。
[解决办法] 老赵要我来接分
[解决办法] 看看 学习下
[解决办法] 恭喜
[解决办法] 恭喜升星!!!![解决办法]
探讨 java一直在模仿c# 而且java比c#简单易学。还建议大家不要学java [解决办法] 不懂java,没有发言权...
[解决办法] 啥也不说了 接分吧。。。
[解决办法] 恭喜,接分
[解决办法] 先恭喜哈了··
[解决办法] 我的最终目的不是为了“让Java程序员使用C#”,而是“让Java程序员使用Scala”
-------------------------------------
老赵
[解决办法] JF 不过个人不赞同去比较语言的好坏
适合自己的就是最好的
[解决办法] gx
[解决办法] 恭喜,接分!
[解决办法] 探讨 java一直在模仿c# 而且java比c#简单易学。还建议大家不要学java[解决办法] 不要搞什么语言歧视
[解决办法] 接分了!~~~~~~~~~~~~~~~~~
[解决办法] [解决办法] JF 顶下
[解决办法] 探讨 搞什么语言之争 虽然我没用过java,但这话从老赵嘴里说出来感觉不舒服。[解决办法] [解决办法] 好 好 好
[解决办法] 恭喜恭喜接分接分
[解决办法] 各有各的好处
[解决办法] 类似楼主的那种代码我也用过,后来发现问题超多。
Model 的属性顺序,和数据库字段顺序要一致。
不然轻则赋值到别的地方,重则直接报类型转换的错误。
[解决办法] 呜呜,什么时候也能去围观一下老赵……
[解决办法] 恭喜!接分
[解决办法] GX!
[解决办法] gx 升级
[解决办法] 挺好的,借鉴了。。
[解决办法] 升星好快啊,才一年,我5年还没看见星星
[解决办法] 学习
[解决办法] 我也感觉是c#抄java的
[解决办法] 为什么不觉得是相互学习呢?人与人之间可以相互学习,那么同样开发语言之间就不能相互学习了?
取长补短,众多的得益者之中不是包括我们开发者么?
[解决办法] 恭喜下楼主~[解决办法] 恭喜 但是感觉这个代码不是很实用,不过还是谢谢lz分享[解决办法] 呵呵,如果自己写orm,我强烈建议将field与数据库对应起来,而不要对应property。linq to sql的做法我认为是错误的。我们的数据库就应该仅仅忠实记录property背后的原始信息,而不是记录property表面的信息。 也就是说,如果楼主的代码思路修改之后,可以这样写成一个扩展方法:
C# codepublic static IEnumerable<T> GetObjects<T>(this DbDataReader rd) where T : new(){ var fs = (from fd in typeof(T).GetFields() let desc = new { field = fd, index = rd.GetOrdinal(fd.Name) } where desc.index >= 0 select desc) .ToList(); foreach (var x in rd) { var obj = new T(); fs.ForEach(d => { d.field.SetValue(obj, rd[d.index]); }); yield return obj; }}[解决办法] 恭喜下楼主~[解决办法] 这里,我们通过扩展方法,为任意DbDataReader都增加了一个GetObjects方法,返回任意指定类型的强类型的对象集合。[解决办法] 探讨 上个星期,到了一星。终于到了,自己天天抢分,无奈技术有限。 抢了将近一年,到了一个小星星。 在坛子里和大家一起进步。真的很开心。 17号 也就是周六 参加了博客园的上海俱乐部活动,围观了老赵。 听到了老赵的演讲, 真的很犀利。 他的总结观点是 :java一直在模仿c# 而且java比c#简单易学。还建议大家不要学java 我挺认同他的观点。大家可以去他的博客看看。 下面是我刚……[解决办法] 学习了[解决办法] [解决办法] 学习了[解决办法] "而且java比c#简单易学"不明白[解决办法] "而且java比c#简单易学"不明白[解决办法] 探讨 呵呵,如果自己写orm,我强烈建议将field与数据库对应起来,而不要对应property。linq to sql的做法我认为是错误的。我们的数据库就应该仅仅忠实记录property背后的原始信息,而不是记录property表面的信息。 也就是说,如果楼主的代码思路修改之后,可以这样写成一个扩展方法: C# code public static IEnumerable<T> GetO……[解决办法] 貌似 是先出java语言的吧! 别人口才好把你说得一愣一愣的. sun公司貌似NB些[解决办法] [解决办法] 来接分[解决办法] 好小啊,恭喜[解决办法] 语言是相通的,各有各的优点,主要是看自己喜欢那种![解决办法] 是先有的Hibernate还是先有的NHibernate 哈哈[解决办法] 为什么要用properties 的索引,我认为直接使用propertie.Name更好。不必担心因为增加删除字段而引起索引的变化[解决办法] 探讨 java一直在模仿c# 而且java比c#简单易学。还建议大家不要学java[解决办法] 纯接分加路过!签名: ------解决方案--------------------
探讨 引用: 引用: 呵呵,先来支持下楼主升星了。 不过,虽然我没玩过Java。 貌似我以前一直都听别人说,c#抄Java的? 我和你一样 没学过java 但是 老赵作为一个MVP 熟悉java 精通c# 的人 肯定比我们看的清楚 不要迷信MVP[解决办法] gxgx