美文网首页
C#的不足(1):匿名类型的不足之处

C#的不足(1):匿名类型的不足之处

作者: 猫头鹰看世界 | 来源:发表于2015-09-05 20:05 被阅读0次

    匿名类型,只有在属性完全一致的情况下(包括属性名称、类型、个数、顺序的一致),编译器才会生成一个匿名类型,否则生成多个匿名类型。

    举个简单的例子,像下面这样的代码,C#编译器生成1个匿名类型

    var cid = new { Id = 1, Name = "C# in Depth, Third Edition", Price = 49.99 };

    var clr = new { Id = 2, Name = "CLR via C#, Fourth Edition", Price = 59.99 };

    而像下面这样的代码,C#编译器生成2个匿名类型

    var cid = new { Id = 1, Name = "C# in Depth, Third Edition", Price = 49.99 };

    var clr = new { Name = "CLR via C#, Fourth Edition", Id = 2, Price = 59.99 };

    我的想法:C#编译器在编译匿名类型时,不应该把“属性顺序”作为因素。比如上述代码,人脑认为是1个类型,可C#编译器却认为是2个类型,而生成的2个类型是一模一样的

    相关文章

      网友评论

          本文标题:C#的不足(1):匿名类型的不足之处

          本文链接:https://www.haomeiwen.com/subject/yhfgxttx.html