C# 如何将值从一个类返回到另一个类?

C# 如何将值从一个类返回到另一个类?,c#,class,return,C#,Class,Return,我正在制作一个包含三个类的程序: Output类从其他两个类接收数据,写入两个新字符串,并将特殊格式组合到另一个字符串,然后将其输出 AidaF类有一个每秒返回一个值(字符串)的方法 Gmail类有一个方法,大约每分钟返回一个值(字符串) 所以我厌倦了使用返回字符串将数据从类2和3返回到第一个类,但只将值返回到当前类,而不是第一个类 这是我正在编写的代码,但是已经精简了很多。但基本面是有的 namespace Final { public class Output {

我正在制作一个包含三个类的程序:

  • Output类从其他两个类接收数据,写入两个新字符串,并将特殊格式组合到另一个字符串,然后将其输出
  • AidaF类有一个每秒返回一个值(字符串)的方法
  • Gmail类有一个方法,大约每分钟返回一个值(字符串)
  • 所以我厌倦了使用
    返回字符串
    将数据从类2和3返回到第一个类,但只将值返回到当前类,而不是第一个类

    这是我正在编写的代码,但是已经精简了很多。但基本面是有的

    namespace Final
    {
        public class Output
        {
            public static void Main()
            {
                Console.WriteLine(gml + aida);
            }
        }
    
        public class AidaF
        {
            private static System.Timers.Timer aTimer;
    
            public static void AMain()
            {
                aTimer = new System.Timers.Timer(1000);
                aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
                aTimer.Interval = 1000;
                aTimer.Enabled = true;
            }
    
    
            private static void OnTimedEvent(object source, ElapsedEventArgs e)
            {
                ...
                reader.ReadToFollowing("value");
                aida.Append(reader.ReadElementContentAsString()).Append(",");
                return aida;
                ...
            }
        }
    
        public class GmaillF
        {
            private static System.Timers.Timer gTimer;
    
            public static void GMain()
            {
                gTimer = new System.Timers.Timer(200000);
                gTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent1);
                gTimer.Interval = 200000;
                gTimer.Enabled = true;
            }
    
            private static void OnTimedEvent1(object source, ElapsedEventArgs e)
            {
                CheckMail();
            }
    
            public static string CheckMail()
            { 
              ...
              gml.Append(reader.ReadElementContentAsString()).Append(",");
              return gml;
              ...
            }
        }
    }
    

    您需要从调用类调用公开的静态方法,以使其正常工作,因此,例如,您的main看起来更像这样:

    public static void Main() {
    Console.WriteLine(GmailF.CheckMail() + AidaF.OnTimedEvent());
    }
    

    我只是猜测CheckMail和OnTimedEvent是您试图返回的字符串。CheckMail和OnTimedEvent都必须是公共静态字符串,才能使上述内容正常工作。

    我不太理解您的要求,但您似乎希望将类视为过程/函数。。。实际上,从语义上讲,它们都不是-Pi希望从类2和类3返回值,以便类1可以对它们进行处理。您是否试图重新发明“可观察集合”模式?也就是说,一个集合通常被认为是从中“提取”信息的东西,一次一件,比如一个客户列表。可观察的集合将信息推送到感兴趣的消费者手中;类代表各种各样的事物。类“Paper”表示作为报纸的所有对象的类。方法返回值。这是我得到建议的地方: