我需要CallerMethod()来访问在CalledMethod()中找到的值。 字符串s是其他以前独立执行的方法的执行结果。 CallerMethod()方法不依赖于CalledMethod()的执行。 CallerMethod()和CalledMethod()方法属于两个不同的项目。创建一个静态类来存储此值似乎不正确。您认为最好的方法是什么? 这些项目是Windows窗体。
Public void PreviousMethod()
{
CalledMethod(a);
}
Public void CalledMethod(string value)
{
string s = value;
}
Public void CallerMethod()
{
string getStringSFromCalledMethod = "?";
}
答案 0 :(得分:1)
不需要进入静态变量。您只需要一个实例属性成员,即可存储先前计算的值
class Class1 {
public string ValueOfImportance { get; private set; }
public void CalledMethod(string value) {
ValueOfImportance = value; // possibly after processing the data from other calls
}
}
class Class2 {
public void CallerMethod() {
Class1 obj; // you need to have the object reference of Class1
string getStringSFromCalledMethod = obj.ValueOfImportance;
}
}
生成ValueOfImportance
时,需要确保对象引用可用于Class2.CallerMethod()