C# 我如何定义一个变量,以便在任何地方使用

C# 我如何定义一个变量,以便在任何地方使用,c#,C#,根据下面的代码,在获得一些值(newrev,newreview)并放入变量后,我需要将它们放入标签(“some text”+newrev)。但我有问题(newrev)在当前环境中并不存在 Label1.Text = "Review Number:" + newReview + "(for preparing of Rev." + newrev+")"; protected void ddlProjectDocument_SelectedIndexChanged(object sender, E

根据下面的代码,在获得一些值(newrev,newreview)并放入变量后,我需要将它们放入标签(“some text”+newrev)。但我有问题(newrev)在当前环境中并不存在

Label1.Text = "Review Number:" + newReview + "(for preparing of Rev." + newrev+")";

protected void ddlProjectDocument_SelectedIndexChanged(object sender, EventArgs e)
{
    _DataContext = new EDMSDataContext();

    var x = ddlProjectDocument.SelectedValue;

    var MaxRev = (from rev in _DataContext.tblTransmittalls
                  where rev.DocID.ToString() == ddlProjectDocument.SelectedValue
                  select  rev.REV).Max();

    if (MaxRev == null)
    {
        var newRev = 0;

    }

    else
    {

        var newRev = Convert.ToInt32(MaxRev) + 1;

    }

    var MaxReview = (from rev in _DataContext.tblFiles
                  where (rev.DocId.ToString()==ddlProjectDocument.SelectedValue)&&   
                        (rev.Rev.ToString()==MaxRev)
                  select rev.Review).Max();

    if (MaxReview == null)
    {
        var newReview = 1;
    }

    else
    {    
        var newReview = Convert.ToInt32(MaxReview) + 1;
    }

    Label1.Text = "Review Number:" + newReview + "(for preparing of Rev." + newrev+")";
}

您需要在
if
语句之外声明
newRev

int newrev;
if(MaxRev == null)
    newRev = 0;
else
    newRev = Convert.ToInt32(MaxRev) + 1;

您需要在
if
语句之外声明
newRev

int newrev;
if(MaxRev == null)
    newRev = 0;
else
    newRev = Convert.ToInt32(MaxRev) + 1;

在函数开头定义
newRev
newReview
,如下所示:

protected void ddlProjectDocument_SelectedIndexChanged(object sender, EventArgs e)
{
    _DataContext = new EDMSDataContext();
    int newRev;
    int newReview;
然后,当您想要使用它们时,不要编写
var newReview=…
(声明一个新变量)而是删除
var
。。。e、 g:

if (MaxReview == null)
{
    newReview = 1;
}
区别:
声明的每个变量都有一个,它决定了它对程序其余部分的可见性。在您的情况下,
newReview
仅在
if
语句中已知,因此当您尝试在外部引用它时,它不再存在。

在函数开头定义
newReview
newReview

protected void ddlProjectDocument_SelectedIndexChanged(object sender, EventArgs e)
{
    _DataContext = new EDMSDataContext();
    int newRev;
    int newReview;
然后,当您想要使用它们时,不要编写
var newReview=…
(声明一个新变量)而是删除
var
。。。e、 g:

if (MaxReview == null)
{
    newReview = 1;
}
区别: 声明的每个变量都有一个,它决定了它对程序其余部分的可见性。在您的例子中,
newReview
仅在
if
语句中已知,因此当您尝试在外部引用它时,它不再存在。

C#不是JavaScript,您应该使用较少的“var”。。。 您正在内部定义新版本

if (MaxRev == null)
{
    var newRev = 0;
}
在这里定义它

protected void ddlProjectDocument_SelectedIndexChanged(object sender, EventArgs e)
{
     _DataContext = new EDMSDataContext();
     var newRev = 0;
     ....
}
C不是JavaScript,你应该少用“var”。。。 您正在内部定义新版本

if (MaxRev == null)
{
    var newRev = 0;
}
在这里定义它

protected void ddlProjectDocument_SelectedIndexChanged(object sender, EventArgs e)
{
     _DataContext = new EDMSDataContext();
     var newRev = 0;
     ....
}

这是因为您在各种if语句中声明newRev,在外部级别声明它:

int newRev;
if (MaxRev == null)
{
    newRev = 0;

}

这是因为您在各种if语句中声明newRev,在外部级别声明它:

int newRev;
if (MaxRev == null)
{
    newRev = 0;

}

你试过格式化你的代码吗?你试过格式化你的代码吗?