Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在c语言中从一个函数调用变量到另一个函数#_C# - Fatal编程技术网

C# 在c语言中从一个函数调用变量到另一个函数#

C# 在c语言中从一个函数调用变量到另一个函数#,c#,C#,我需要在函数emp2中调用字符串“final”。当我尝试时,它说“final不存在”。这两个函数都位于不同的类文件中 internal class emp { internal void empl(int id, string name, string sal) { empdet test = new empdet(id, name, sal); string final = test.ToString(); } } public cla

我需要在函数emp2中调用字符串“final”。当我尝试时,它说“final不存在”。这两个函数都位于不同的类文件中

internal class emp
{
    internal void empl(int id, string name, string sal)
    {
        empdet test = new empdet(id, name, sal);
        string final = test.ToString();
    }
}

public class empdetls
{
    public static void emp2( XElement element)
    {
        XElement element = XElement.Parse(final);

        // ...
    }
}

任何帮助都将不胜感激。

您应该使用私有字段

public class emp
{
       private String final;
        internal void empl(int id, string name, string sal)
        {

           empdet test = new empdet(id, name, sal);
           final = test.ToString();
        }

        public static void emp2( XElement element)
        {

           XElement element = XElement.Parse(final);
           .....
           .....
        }  
}

只需将一个参数传递给
静态方法<代码>静态
方法无论如何都应该没有特定的实例

public static void emp2(XElement element, string final)
{
    // ...
}

需要查看xml。还有empdet方法。你遇到了一个问题。如果不知道两件事,就不可能告诉你如何克服这个问题。首先,谁(即哪个类)调用
emp2
方法?第二,您可以随意更改
emp2
的方法签名吗?我现在已经更新了代码。希望这些帮助我已经重新格式化了你的代码。这是正确的吗?这是不正确的,原因有二。首先,从原始代码中可以看出,
emp
emp2
方法属于不同的类。其次,即使它们在同一个类中,您的代码也不会编译,因为您试图从静态方法
emp2
访问非静态变量
final
。我应该如何克服这一问题