在goto语句的范围内没有这样的标签'Label_05C0'

时间:2013-02-14 22:10:04

标签: c# asp.net label goto

如何修复错误?

  

错误23在goto语句范围内没有此类标签'Label_05C0'H:\ calismalarim \ v2 \ Version 2 \ ro.ascx.cs 582 17版本2

if (this.PriceID == "")
{
    this.ddlSelectedPrices.Visible = false;
    this.lnkClosePrices.Visible = false;
    this.lblClosePrices.Visible = false;
    DataTable table2 = new DataTable();
    table2.Columns.Add("PriceID", Type.GetType("System.Int32"));
    table2.Columns.Add("PriceName", Type.GetType("System.String"));
    table2.Columns.Add("Count", Type.GetType("System.Int32"));
    int num3 = 1;
    while (str != "")
    {
        ds.Tables[0].DefaultView.RowFilter = str + " and " + this.method_6(Conversions.ToString(num3));
    Label_0547:
        if (ds.Tables[0].DefaultView.Count > 0)
        {
            table2.Rows.Add(new object[] { num3, this.method_5(Conversions.ToString(num3)), ds.Tables[0].DefaultView.Count });
        }
        num3++;
        if (num3 <= 12)
        {
            continue;
        }
        this.dlPrices.DataSource = table2;
        this.dlPrices.DataBind();
        if (this.dlPrices.Items.Count > 0)
        {
            this.divPrices.Visible = true;
            this.dlPrices.Visible = true;
            this.lblPrices.Visible = true;
        }
        return;
    Label_05C0:
        ds.Tables[0].DefaultView.RowFilter = this.method_6(Conversions.ToString(num3));
        goto Label_0547;
        int zz21z1a = 0;
    }
    goto Label_05C0;
    int zzz1f = 0;
}

3 个答案:

答案 0 :(得分:3)

标签位于while循环的范围内,但您尝试将其称为之外的循环。

你做不到。

确保您的标签位于same lexical scope中,或更改代码 - 功能良好。

答案 1 :(得分:0)

Label_05C0:
            ds.Tables[0].DefaultView.RowFilter = this.method_6(Conversions.ToString(num3));
            goto Label_0547;
            int zz21z1a = 0;
        }
        goto Label_05C0;
        int zzz1f = 0;

标签位于while循环的一侧,因此它只存在于while语句的范围内。你正试图跳回那里......

使用goto很少是一个好主意。 混合块结构化代码和goto完全是一个坏主意。

Ps你是如何期待那些被调用的zzz ...行,以及你期望他们做什么?

你确定goto是一个不错的选择吗?

答案 2 :(得分:0)

如果您在IL级别修改代码,则可以使它起作用。例如,使用伪造的goto语句进行编译,然后在DNSPY中编辑代码并修改goto。您可以通过这种方式来做各种奇怪而美妙的事情。

这不是一个好主意。