我无法检索ReturnName
//
private string testName;
public string ReturnName
{
private set { testName = "MyName"; }
get { return testName; }
}
//
string i = data.ReturnName;
答案 0 :(得分:8)
你应该这样做:
public string ReturnName
{
get { return "MyName"; }
}
//
string i = data.ReturnName;
如果您只是返回硬编码值,则不需要该集。更重要的是,你得到错误的原因是因为你可能永远不会调用set。如果你想要一个默认值,那么你应该做更多这样的事情:
private string testName = "MyName";
public string ReturnName
{
private set { testName = value; }
get { return testName; }
}
//
string i = data.ReturnName;
答案 1 :(得分:3)
您的代码永远不会设置ReturnName
。
答案 2 :(得分:3)
如果您从另一个班级打电话,ReturnName
始终为空,因为您无法从中设置值。它返回MyName
的唯一时间是在同一个类的属性上设置任何值,但返回的值为MyName
。
考虑以下示例,
public Class SampleClass
(
private string testName;
public string ReturnName
{
private set { testName = "MyName"; }
get { return testName; }
}
public void MethodName()
{
ReturnName = "hello";
Console.WriteLine(ReturnName);
}
)
public class Main
{
SampleClass _x = new SampleClass();
Console.WriteLine(_x.ReturnName); // will output EMPTY
_x.MethodName(); // will output MyName
}