关于存储变量c#以便在其他类中使用的基本问题

关于存储变量c#以便在其他类中使用的基本问题,c#,variables,get,set,storage,C#,Variables,Get,Set,Storage,好的,伙计们 我基本上有一个类,它通过一个方法签名的参数接受3个字符串 然后,我尝试将这3个字符串映射到全局变量,以存储它们 然而,当我尝试在实例化这个类之后从另一个类调用这些全局变量时,它们显示为空值 这个类通过方法setDate和映射获取3个字符串 public class DateLogic { public string year1; public string month1; public string day1; public DateLogic

好的,伙计们

我基本上有一个类,它通过一个方法签名的参数接受3个字符串

然后,我尝试将这3个字符串映射到全局变量,以存储它们

然而,当我尝试在实例化这个类之后从另一个类调用这些全局变量时,它们显示为空值

这个类通过方法setDate和映射获取3个字符串

 public class DateLogic
{

    public string year1;
    public string month1;
    public string day1;

    public DateLogic()
    {


    }

    public void setDate(string year, string month, string day) {

        year1 = year;
        month1 = month;
        day1 = day;


    // getDate();

    }

    public string getDate() {
     return year1 + " " + month1 + " " + day1;
    }

}
在这之后,我试着从这里给这个班打电话

 public static string TimeLine2(this HtmlHelper helper, string myString2)
    {


        DateLogic g = new DateLogic();

        string sday = g.day1;
        string smonth = g.month1;
        string syr = g.year1;
    }
我一直在调试,这些值一直到全局变量,但是当从这个类调用时,它不显示它们,只显示null


这是因为我正在创建一个全新的实例,如何解决这个问题?

year1
month1
day1
不是“全局变量”-它们是为该类型定义的实例字段。每个
DateLogic
实例都有单独的字段


您可以通过使用
静态
字段来实现所需的功能,但这会带来很多麻烦(特别是当您的代码是线程化的或在web服务器上运行时,这一点由
HtmlHelper
暗示)-最好将配置的
DateLogic
实例传递给需要它的代码。

year1
month1
day1
不是“全局变量”-它们是为该类型定义的实例字段。每个
DateLogic
实例都有单独的字段


您可以通过使用
静态
字段来实现所需的功能,但这会带来很多麻烦(特别是当您的代码是线程化的或在web服务器上运行时,这一点由
HtmlHelper
暗示)-最好将配置的
DateLogic
实例传递给需要它的代码。

您缺少对TimeLine2中g.setDate的调用


此外,仅供参考,它们不是“全局”变量。一个全局变量在没有对象引用的情况下是可以访问的,并且无论如何也不是您想要的。您正在谈论类变量。

您缺少对TimeLine2中g.setDate的调用

此外,仅供参考,它们不是“全局”变量。一个全局变量在没有对象引用的情况下是可以访问的,并且无论如何也不是您想要的。你说的是类变量