【发布时间】:2013-11-14 09:05:49
【问题描述】:
对于任何给定的课程,显然我会有类似的东西:
public class Stuff {
int field1;
int field2;
// [etc.]
public Stuff (int field1In, int field2In) {
field1 = field1In;
field2 = field2In;
}
}
但是,对于许多字段,从这样的参数间接分配属性看起来既丑陋又间接。有没有更直接的方法?例如,在哪里可以不指定参数名称,而只指定字段名称,它会直接分配它?
【问题讨论】:
-
也许反映你所需要的
-
这里似乎没有任何优雅/简单的解决方案。您可以尝试面向方面的编程,例如 PostSharp 来根据您的需要定制代码。或者,一些开发支持工具,比如 Resharper,对生成这样的代码有很大帮助(实际上它需要几次击键)。
-
@TimSchmelter Eric 已不在 MSFT,建议 Andres..:)
-
当您说“许多属性”时,您的意思是多少?如果编写一些赋值语句(即使没有 ReSharper 之类的东西)看起来很繁重就足够了,那么您可能需要重新考虑您的类设计。显然您的帖子只是一个示例,但是如果您传递了数十个
ints或其他原始类型,例如,您应该考虑将这些值分组到对您的问题域有意义的类中是否更好. -
'int prop1;'不是属性。它将被称为字段或成员,但不是属性。请参阅MSDN 了解更多信息。
标签: c# parameters field