C#Razor:为什么这个空检查失败了

时间:2011-05-23 18:09:22

标签: c# razor umbraco

您好我正在使用带有umbraco cms的C#razor。我试图检查变量是否为空或空,但它总是返回错误。这是代码

@if(String.IsNullOrEmpty(@Model.originalPageLink) == false)
{
   <div>Read the original page from <a href="@Model.originalPageLink">@Model.originalPageName</a></div>
}

加载页面时,剃刀脚本出错。没有特别有用的错误信息。代码中给我带来问题的部分是这样的:

@if(String.IsNullOrEmpty(Model.originalPageLink) == false)

我在这里试过这段代码:

@if(Model.originalPageLink != null)

此代码不会出错,但在字符串为空时返回非null值。

有关于此的任何想法吗?

2 个答案:

答案 0 :(得分:4)

好的..我已经弄明白了..这是解决方案

@if(String.IsNullOrEmpty(@Model.originalPageLink.ToString()) == false )

我必须在动态变量上放置ToString()。现在它正常工作。

答案 1 :(得分:1)

“当你消除了不可能的事物,无论剩下什么,无论多么不可能,都必须是真理”

Model是否可能为null?这是剩下的唯一可以为null的东西......