对于C#程序员来说,这个问题听起来很奇怪,但有一种方法(或好方法)可以检查局部变量是否存在?例如(不是真正的代码,而只是为了显示上下文):
TagBuilder name = new TagBuilder("span");
name.InnerHtml.Append("John");
if (Session.IsMaster()) {
TabBuilder container = new TagBuilder("label");
container.InnerHtml.Append("Our Master of Universe, ");
container.InnerHtml.AppendHtml(name);
}
return var_exists(container)? container : name;
可以用C#做吗?还是有另一种方法可以做到这一点?
答案 0 :(得分:-1)
您应该将container
的声明移出if-block
,以便可以在块之外使用:
TagBuilder name = new TagBuilder("span");
name.InnerHtml.Append("John");
TabBuilder container = null;
if (Session.IsMaster()) {
container = new TagBuilder("label");
container.InnerHtml.Append("Our Master of Universe, ");
container.InnerHtml.AppendHtml(name);
}
return container ?? name;
??
是空合并运算符,可以解释为:
container != null ? container : name