如何从Project2的Class获取数据类型的值到Project1的类? - Visual Studio 2010 C#

时间:2011-09-22 20:03:34

标签: c# instance

我有1个解决方案,包含2个项目。 1是Windows应用程序,另一个是类库。在类库中,有一个类,Windows应用程序需要其数据类型的值。我想出了这个,

//Proj2
public class class1
{
    bool data1;  //supossed to be true but false in default
    public void method()
    {
        if (condition)
            data1 = true;
    }
 }

//Proj1
public class class2
{
    bool data2; //must be equal to data1

    public void method()
    {
        Proj2.Class1 class1 = new Proj2.Class1();
        data2 = class1.data1
        if (data2 == true)
            MessageBox.Show(data2.ToString());
    }
}

问题是,输出始终显示False而不是true。我确信100%条件返回TRUE因为我测试了它。我认为问题是新实例,数据类型重置为默认值为false。那么我如何获得原始价值。注意:有两个项目。谢谢!

1 个答案:

答案 0 :(得分:2)

您似乎错过了将proj1.class1.method设置为data1

true来电

所以它应该是

public void method()
{
    Proj2.Class1 class1 = new Proj2.Class1();
    class1.method();
    data2 = class1.data1;
    if (data2 == true)
        MessageBox.Show(data2.ToString());
}
  

我认为问题是新实例

现在也许你不想每次调用Class2.method时调用class1.method()。如果这是真的,你可能想看看实现singleton。那就是

public void method()
{
    data2 = Proj2.Class1.Instance.data1;
    if (data2 == true)
        MessageBox.Show(data2.ToString());
}