jjzjj

c# - 公约问题: When do you use a Getter/Setter function rather than using a Property

令我印象深刻的是,在尝试操作类中的字段时应该使用C#中的属性。但是当涉及到复杂的计算或数据库时,我们应该使用getter/setter。这是正确的吗?什么时候对属性使用s/getter? 最佳答案 .NET设计指南在Propertiesvs.Methods中提供了这个问题的一些答案。部分。基本上,属性与字段具有相同的语义。你不应该让一个属性抛出异常,属性不应该有副作用,顺序不重要,属性应该相对快速地返回。如果这些事情中的任何一个可能发生,最好使用一种方法。该准则还建议使用返回数组的方法。在决定是使用属性还是方法时,如果我将其视为字段

C# getter 和 setter 简写

如果我对这条线的内部运作的理解是正确的:publicintMyInt{get;set;}然后它在幕后这样做:privateint_MyInt{get;set;}PublicintMyInt{get{return_MyInt;}set{_MyInt=value;}}我真正需要的是:privateboolIsDirty{get;set;}privateint_MyInt{get;set;}PublicintMyInt{get{return_MyInt;}set{_MyInt=value;IsDirty=true;}}但我想这样写:privateboolIsDirty{get;set;}pu

c# - c#类中类的getter和setter

假设我们有一个带有属性和getter/setter的InnerClass类。我们还有一个包含InnerClass的OuterClass类。例如classInnerClass{privateintm_a;privateintm_b;publicintM_A{get{returnm_a;}set{m_a=value;}}}classOuterClass{privateInnerClassinnerClass}如何为OuterClass的innerClass成员实现正确的getter和setter?提前致谢! 最佳答案 语法不会有任何不同

c# - Resharper 5 中 C# 赋值建议前的冗余条件检查

在下面的示例中,条件检查真的是多余的吗?:publicclassMyClass{publicboolMyProperty{get;set;}publicvoidDoSomething(boolnewValue){//R#says:redundantconditioncheckbeforeassignment//onthefollowingline:if(MyProperty!=newValue){//我知道无论哪种方式MyProperty都会被设置为newValue,但是检查是多余的吗?在Adob​​eFlex中,getteriscalledimplicitlybytheVM即使没有进

C# getters, setters 声明

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicates:Whyusegettersandsetters?C#3.0Auto-Properties-usefulornot?用下面的方式定义属性有区别吗-//private,withgetter&setterprivatestringfName;publicstringName{get{returnthis.fName}set{this.fName=value}}//defineasaPropertypublicstringName{get;set;}据我所知,这只是一种风格偏好。我错过了什么吗?

c# - 有没有理由拥有没有 setter/getter 的属性(property)?

我的经理问我使用带有setter而没有getter的属性是否是好的做法。publicclassPropertyWrapper{privateMyClass_field;publicMyClassProperty{set{_field=value;}}publicstringFirstProperty{get{return_field.FirstProperty;}}publicstringSecondProperty{get{return_field.SecondProperty;}}}他将使用其他属性来公开私有(private)字段中的属性,由该setter设置。我的建议是只使用私有

c# - 在 C# 中与 getter 和 setter 接口(interface)

正如我在这里阅读的http://msdn.microsoft.com/en-us/library/75e8y5dd%28v=VS.100%29.aspx有可能在接口(interface)中有get而不是set吗?或者如果我想在接口(interface)中使用getter和setter,我是否必须使用旧语法getVarsetVar只是因为新语法不适合接口(interface)语法?更新:如果我必须在接口(interface)中省略set,这是否意味着我不能强制类拥有setter,这违背了在这种情况下拥有接口(interface)的目的,因为我只能部分强制执行?

c# - Getter 无体,Setter 有

我有一个当前是自动的属性。publicstringMyProperty{get;set;}但是,我现在需要它在每次更改时执行一些操作,所以我想向setter添加逻辑。所以我想做类似的事情:publicstringMyProperty{get;set{PerformSomeAction();}}但是,这不会构建...MyProperty.get'必须声明一个主体,因为它没有标记为abstract、extern或partial我不能只让getter返回MyProperty,因为它会导致无限循环。有没有办法做到这一点,还是我必须声明一个私有(private)变量来引用?我宁愿不这样做,因为M

c# - 过滤掉 Type.GetMethods() 返回的自动生成的方法(getter/setter/add/remove/.etc)

我使用Type.GetMethods(BindingFlags.Instance|BindingFlags.Static|BindingFlags.Public|BindingFlags.NonPublic)检索给定类型的方法数组。问题是返回的MethodInfo可能包含编译器生成的方法,而我不想要这些方法。例如:propertyboolEnabled{get;将得到boolget_Enabled()事件SomethingChanged会得到add_SomethingChanged(事件处理程序)和remove_SomethingChanged(事件处理程序)我或许可以添加一些过滤逻辑

c# - 何时使用 GetXXX() 方法以及何时使用 Getter 属性

有一些.NET库使用方法来访问对象数据而不是getter,即HttpWebResponse.GetResponseStream()。还有一些通过属性访问流的示例,即HttpResponse.OutputStream。我的问题是何时使用哪种访问形式以及为什么? 最佳答案 参见FxCop规则:CA1024:Usepropertieswhereappropriate. 关于c#-何时使用GetXXX()方法以及何时使用Getter属性,我们在StackOverflow上找到一个类似的问题: