访问变量

时间:2012-12-12 15:27:47

标签: c# asp.net-mvc

我有以下内容:

    public ActionResult GetRpt(string pNum)
    {
      string dirPath = "C:\\Folder1";
      string pvtResult =  GetType1Report(pNum);
    }

    private string GetType1Reportt(string paslNum)
    {
      string dPath = dirPath;          
     }    

我需要从GetType1Report中访问dirPath。

我得到一个消息,在GetPReport中不存在dirPath。

使用GetPReport访问dirPath的最佳方法是什么?我当时正考虑将此作为一个公共静态,但不确定这是否是最好的解决方法。

4 个答案:

答案 0 :(得分:5)

将其作为变量发送到GetType1Reportt?

private string GetType1Reportt(string paslNum, string dirPath)
{
    string dPath = dirPath;          
}

答案 1 :(得分:2)

是传递变量

public ActionResult GetRpt(string pNum)
{
  string dirPath = "C:\\Folder1";
  string pvtResult =  GetType1Report(pNum, dirPath );
}

private string GetType1Reportt(string paslNum, string dPath)
{

 }    

答案 2 :(得分:0)

您不需要使用public static变量。如果您在方法之外将变量声明为private,那么您仍然可以访问方法中的变量。

public class myClass
{
    private string dirPath;

    public ActionResult GetRpt(string pNum)
    {
      dirPath = "C:\\Folder1";
      string pvtResult =  GetType1Report(pNum);
    }

    private string GetType1Reportt(string paslNum)
    {
      dPath = dirPath;          
    }   
}

答案 3 :(得分:0)

您希望将变量传递给方法。 我还建议不要硬编码本地路径。在没有“C:\”的PC上运行时会发生什么。

  public ActionResult GetRpt(string pNum)
    {
      string dirPath = "C:\\Folder1";
      string pvtResult =  GetType1Report(pNum, dirPath);
    }

    private string GetType1Reportt(string paslNum, string dirPath)
    {
      string dPath = dirPath;          
     }