C# RoutedData.Values[“xxx”在asp.net用户控件内生成错误
我正在尝试更新基于asp.net webform的网站以使用路由功能,但未能修复userControl.ascx中的一个错误 我可以使用C# RoutedData.Values[“xxx”在asp.net用户控件内生成错误,c#,asp.net,url-routing,webforms,C#,Asp.net,Url Routing,Webforms,我正在尝试更新基于asp.net webform的网站以使用路由功能,但未能修复userControl.ascx中的一个错误 我可以使用RouteData.Values[“language”].ToString()访问主页中的查询字符串值,但当我需要在用户控件中使用查询字符串值时,同样会失败 我甚至尝试使用HttpContext.Current.Request.RequestContext.RouteData.Values[“language”].ToString() 但是没有运气 下面是我试图
RouteData.Values[“language”].ToString()
访问主页中的查询字符串值,但当我需要在用户控件中使用查询字符串值时,同样会失败
我甚至尝试使用
HttpContext.Current.Request.RequestContext.RouteData.Values[“language”].ToString()代码>
但是没有运气
下面是我试图捕获查询字符串的代码示例
int LangID = 1;
int ArticleID = 0;
int PageID = 0;
int IssueID = 0;
int CategoryID = 0;
string language = string.Empty;
if (string.IsNullOrEmpty(Request["PageID"]))
{
language = HttpContext.Current.Request.RequestContext.RouteData.Values["language"].ToString();
LangID = Helper.GetLanguageID(language);
ArticleID = int.Parse(HttpContext.Current.Request.RequestContext.RouteData.Values["aid"].ToString());
PageID = int.Parse(HttpContext.Current.Request.RequestContext.RouteData.Values["PageID"].ToString());
IssueID = int.Parse(HttpContext.Current.Request.RequestContext.RouteData.Values["issue"].ToString());
}
else
{
language = Request["language"];
LangID = Helper.GetLanguageID(language);
ArticleID = int.Parse(Request["aid"]);
PageID = int.Parse(Request["PageID"]);
IssueID = int.Parse(Request["issue"]);
}
我得到了这个声明的以下错误
language=HttpContext.Current.Request.RequestContext.RoutedData.Values[“language”].ToString()代码>
错误消息:
System.NullReferenceException was caught
Message=Object reference not set to an instance of an object.
Source=App_Web_odw0cnkk
我将非常感谢您在这方面提供的帮助,以及如何解决此问题。请按以下方式使用:
HttpContext.Current.Request.RequestContext.RouteData.Values["XXXXXX"]
Thx:您尝试过这个.Page.RouteData.Values[“language”].ToString()吗?HttpContext.Current.Request.RequestContext.RoutedData.Values[“language”]为null@jbl:-我尝试了Page.RouteData.Values[“language”].ToString()代码>也不起作用。@SatPal:-你是对的,我现在使用的是if(string.IsNullOrEmpty(Request[“language”])
,因为语言存在于所有页面中。我错过了最基本的东西。谢谢