无效的URI:无法确定URI的格式异常

时间:2013-11-28 22:49:28

标签: c# asp.net

在我的asp.net c#web应用程序中,我无法找到代码中的确切位置,此异常(无效URI:无法确定URI的格式。)被引发。异常来临的URL格式如下

http://somedomain.com/sepsisvte/sepsis.aspx?4040431page=2

如果问题与URL的结构有关,那么就像下面的URL一样,我根本没有得到任何例外

http://somedomain.com/sepsisvte/sepsis.aspx?4020894page=2 http://somedomain.com/sepsisvte/sepsis.aspx?4020894page=3

它是一个非常大的应用程序,它很难找到错误的起源。有什么想法吗?

堆栈跟踪如下

  

[UriFormatException:无效的URI:URI的格式不可能   确定。] System.Uri.CreateThis(String uri,Boolean dontEscape,   UriKind uriKind)+5462488 System.Uri..ctor(String uriString)+20
  umbraco.presentation.requestModule.rewrite404Url(String url,String   querystring,Boolean returnQuery)+265
  umbraco.presentation.requestModule.Application_BeginRequest(对象   发件人,EventArgs e)+237
  System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()   +68 System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously)+75

1 个答案:

答案 0 :(得分:1)

那是因为你的网址包含这个“?404”。 Umbraco在每个网址中搜索此文本,如果存在,则重写网址。在这里查看源代码:https://searchcode.com/codesearch/view/28576630/,搜索此方法:rewrite404Url。

其中一个解决方案是尝试使用下划线为查询字符串键添加前缀。