C#从另一个类调用一个类中的函数

C#从另一个类调用一个类中的函数,c#,arrays,return-value,C#,Arrays,Return Value,首先,我要说我不是开发人员。是的,这是一场噩梦。但这是一个一次性工具,仅此而已。它又快又脏,只需要工作就可以了 我有以下代码: public string[] get_status(string local_fname) { var dts_doc = new HtmlAgilityPack.HtmlDocument(); dts_doc.Load(local_fname); //Pull the values

首先,我要说我不是开发人员。是的,这是一场噩梦。但这是一个一次性工具,仅此而已。它又快又脏,只需要工作就可以了

我有以下代码:

        public string[] get_status(string local_fname)
    {
        var dts_doc = new HtmlAgilityPack.HtmlDocument();
        dts_doc.Load(local_fname);

        //Pull the values
        var ViewState = dts_doc.DocumentNode.SelectSingleNode("/html[1]/body[1]/div[1]/input[4]/@value[1]");
        var EventValidation = dts_doc.DocumentNode.SelectSingleNode("/html[1]/body[1]/div[2]/input[1]/@value[1]");

        string ViewState2 = ViewState.Attributes[3].Value;
        string EventValidation2 = EventValidation.Attributes[3].Value;


        //Display the values

        //System.Console.WriteLine(ViewState.Attributes[3].Value);
        //System.Console.WriteLine(EventValidation.Attributes[3].Value);
        //System.Console.ReadKey();
        return new string[] { ViewState2, EventValidation2 };
    }
我想通过Main.cs上的按钮调用get_status,该按钮将显示两个带有ViewState2和EventValidation2的消息框

再说一次,我不是开发人员,这可能是错误的做法。但我只需要一个快速而肮脏的解决方案就可以完成这项工作。

试试这个:

foreach(string s in get_status(localFname))
{
    MessageBox.Show(s);
 }
正如你所说,这是快速和肮脏的,我一直忠于这一范式

是的,如果您需要访问另一个类,请将该方法设置为static,或者只是创建一个实例并对其调用该方法。我希望我正确地理解了这个问题。

试试这个:

foreach(string s in get_status(localFname))
{
    MessageBox.Show(s);
 }
正如你所说,这是快速和肮脏的,我一直忠于这一范式


是的,如果您需要访问另一个类,请将该方法设置为static,或者只是创建一个实例并对其调用该方法。我希望我正确理解了这个问题。

如果您使用的是visual studio,请转到要单击的按钮,双击该按钮。这将创建一个eventhandler。在eventhandler中,您应该调用上述方法

protected void Button1_Click(object sender, eventArgs e)
{
   string local_fname = someValue;
   string results[] = get_status(local_fname);
   MessageBox.Show(results[0]);
   MessageBox.Show(results[1]);
}

如果您使用的是visual studio,请转到要单击的按钮,双击该按钮。这将创建一个eventhandler。在eventhandler中,您应该调用上述方法

protected void Button1_Click(object sender, eventArgs e)
{
   string local_fname = someValue;
   string results[] = get_status(local_fname);
   MessageBox.Show(results[0]);
   MessageBox.Show(results[1]);
}

通过将static关键字添加到函数定义中,使函数成为静态的:

静态公共字符串[]获取\u状态(字符串本地\u fname)


使用类名引用主类中的函数。

将static关键字添加到函数定义中,使函数成为静态的:

静态公共字符串[]获取\u状态(字符串本地\u fname)


使用类名引用主类中的函数。

感谢您的foreach语句。那帮了我的忙谢谢你的foreach声明。那帮了我的忙谢谢你的回答。快,脏,正是我需要的。非常感谢。谢谢你的回答。快,脏,正是我需要的。非常感谢。