C# 名称'';在当前上下文中不存在
`CommService.CommServiceClient客户端=新的CommService.CommServiceClient(); 字符串cardId=txtCardId.Text; string cardType=CBCardType.Text; 字符串cardPin=txtCardPin.TextC# 名称'';在当前上下文中不存在,c#,wpf,C#,Wpf,`CommService.CommServiceClient客户端=新的CommService.CommServiceClient(); 字符串cardId=txtCardId.Text; string cardType=CBCardType.Text; 字符串cardPin=txtCardPin.Text if (radEnab.IsChecked == true) { string blacklist = Convert.ToStrin
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);
问题是黑名单并被阻止“名称“”在当前上下文中不存在”
如何解决此问题您应该在
数据
变量可以访问的范围内声明黑名单
和阻塞
。在您的情况下,您正在声明黑名单
,并在变量无法访问的范围内被阻止
您应该这样做才能访问黑名单并被阻止:
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);
为了更好地理解局部变量范围,请看一看您知道您正在声明黑名单
和区块名单
为仅当条件的局部范围,对吗?若你们想在相对范围内的其他地方使用它们,就在if的花括号外声明这些变量。当前变量作用域仅在if块内,并且您尝试在作用域外使用它们。很高兴,这对您有所帮助。如果答案对你合适,你可以接受:)