当前上下文中不存在名称“”

The Name '' Does not Exists in the Current Context

我遇到编译错误:

The Name '' Does not Exists in the Current Context

问题是blacklistblocked

我该如何解决这个问题?

查看下面我的代码:

CommService.CommServiceClient client = new CommService.CommServiceClient();
            
string cardId = txtCardId.Text;
string cardType = cboCardType.Text;
string cardPin = txtCardPin.Text;

    if (radEnab.IsChecked == true)
    {
        string blacklist = Convert.ToString(radEnab.DataContext);
    }

    if (radDis.IsChecked == true)
    {
        string blacklist = Convert.ToString(radDis.DataContext);
    }
    
    if (radEnab2.IsChecked == true)
    {
        string blocked = Convert.ToString(radEnab2.DataContext);
    }

    if (radDis2.IsChecked == true)
    {
         string blocked = Convert.ToString(radDis2.DataContext);
    }
         
    string startDate = StartDate.Text;
    string expiryDate = ExpiryDate.Text;
    string zone = cboZone.Text;
           
    string data = cardId + cardType + cardPin + blacklist + blocked + startDate + expiryDate + zone;
    client.ReceiveDataFromApp("R1", "11", "161.100.100.79", "4000", data);

您应该在 data 变量可以访问的范围内声明 blacklistblocked。在您的情况下,您正在声明 blacklist 并在 if 范围内阻塞,data 变量无法访问。

你应该这样做才能进入黑名单并被阻止:

        string blacklist = string.Empty;
        string blocked = string.Empty;
        if (radEnab.IsChecked == true)
        {
            blacklist = Convert.ToString(radEnab.DataContext);
        }

        if (radDis.IsChecked == true)
        {
            blacklist = Convert.ToString(radDis.DataContext);
        }
        if (radEnab2.IsChecked == true)
        {
            blocked = Convert.ToString(radEnab2.DataContext);
        }

        if (radDis2.IsChecked == true)
        {
            blocked = Convert.ToString(radDis2.DataContext);
        }

        string startDate = StartDate.Text;
        string expiryDate = ExpiryDate.Text;
        string zone = cboZone.Text;

      string data = cardId + cardType + cardPin + blacklist + blocked + startDate + expiryDate + zone;
      client.ReceiveDataFromApp("R1", "11", "161.100.100.79", "4000", data);

为了更好地理解局部变量作用域,请查看here