c# - 在 C# 中属性的集合访问器中重命名“值”变量
问题描述
在 VB.NET 中,您可以更改此变量的名称。您也可以在 C# 中执行此操作还是总是调用它value
?
例子:
Private _SomeVariable As String
Public Property SomeValue() As String
Get
Return _SomeVariable
End Get
Set(ByVal foo As String) ' This is what I mean
_SomeVariable = foo
End Set
End Property
我习惯用 VB.NET 编写代码,但最终想改用 C# 并尝试了解 C# 的所有差异和特性。
我知道这没什么大不了的,但是Telerik例如在将 VB.NET 转换为 C# 时并没有意识到这一点,如果您也有一个名为的类变量foo
(对于上述示例),这可能会导致错误行为。
解决方案
设置参数始终命名为value
,您无法更改它。如果您的代码中碰巧有一个冲突的名称,您可以使用完全限定名称来使用它:
class MyClass
{
private string value;
public string Value
{
get { return value; }
set { this.value = value; } // this.value is the private field
}
}
推荐阅读
- ios - 按下通知后反应原生应用程序崩溃 [iOS]
- python - python 正则表达式匹配包括新行在内的完整段落
- python - 怎么做翻译?
- java - 如何自动删除 log4j2 中的旧日志文件
- c# - 如何在私有 void 中使用 Xamarin.form 中的对象(如条目)?
- google-apps-script - 如何避免在 google-sheet 应用程序脚本中重定向
- vim - 有没有办法执行 txt 文件中的 vim 命令以及文本?
- javascript - 我如何使响应机器人不继续响应?
- python - 不能在 python 中使用代理
- javascript - 以角度动态更改各种输入的css属性