我喜欢C#3初始化语法,并使用了很多,但今天同时寻找在反射器,下面就起来:初始化语法
var binding = new WSHttpBinding
{
ReaderQuotas = { MaxArrayLength = 100000 },
MaxReceivedMessageSize = 10485760
};
起初我还以为这是一个错误,但它确实编译!猜猜我还在不断学习新东西。 :)
从我所知道的情况来看,它设置WSHttpBinding
的ReaderQuotas
属性的MaxArrayLength
属性。
该语法是否会创建一个新的ReaderQuotas
对象,然后设置属性,还是假定属性已被初始化?这是人们用来初始化'孩子'属性的一般方式吗?
我确实觉得语法有点混乱......
您可能感兴趣的[本文](http://www.codeducky。org/even-concise-c-object-initializers /),它讨论了这种类型的初始化器的语义和用例 – ChaseMedallion 2014-10-14 23:46:36