检查Page.RouteData.Values是否有值

时间:2012-12-09 01:06:05

标签: c# asp.net routes

运行时出现错误

string quote = Page.RouteData.Values["quote"].ToString() ?? string.Empty;

错误:对象引用未设置为对象的实例。

据我所知,ToString导致错误,因为Page.RouteData.Values [“quote”]为空/ null。

在我们执行ToString之前,如何检查 Page.RouteData.Values [“quote”]是否有值?

2 个答案:

答案 0 :(得分:7)

怎么样:

if (Page.RouteData.Values["quote"] != null) {
    string quote = Page.RouteData.Values["quote"].ToString() ?? string.Empty;
}

string quote = ((Page.RouteData.Values["quote"] != null) ? Page.RouteData.Values["quote"].ToString() : string.Empty);

答案 1 :(得分:0)

试试这个

var quote = Page.RouteData.Values["quote"]?.ToString() ?? string.Empty;