我越來越可怕Cannot use a leading .. to exit above the top directory.
調試ASP.NET無法使用的主要..退出頂級目錄
不幸的是,ME的生成上面......地方嗎?....我的控制。有沒有工具可以幫助我找出產生的地方?甚至超鏈接的實際文本?也許intellitrace不知何故?
是的,它有一百萬谷歌的結果。我知道我需要解決的問題,我不知道問題實際發生在哪裏。
我試着覆蓋渲染事件,然後在每一個HtmlLink對象上調用ResolveClientURL,我可以通過從基地走控制樹來找到它,但是永遠不會拋出異常或者做錯任何事情。難道它只會在base.render
期間死亡,因爲我從/v5/plugins/dashboard
中的頁面調用ResolveClientURL,並且基頁位於/v5/
?
這是我寫手動調試的位。我希望這段代碼拋出異常。
protected override void Render(HtmlTextWriter writer)
{
foreach (Control c in base.Controls)
{
Trace.Write("New base control");
var baseParent = c;// findBaseParent(c);
Trace.Write(baseParent.GetType().ToString());
renderChillunsRecursive(baseParent, 0);
}
base.Render(writer);
}
private int total;
private void renderChillunsRecursive(Control c,int depth)
{
var chilluns = c.Controls;
foreach (Control a in chilluns)
{
renderChillunsRecursive(a,depth +1);
total++;
}
string otherString = String.Empty;
if(c.GetType() == typeof(HtmlLink))
{
HtmlLink theLInk = ((HtmlLink) c);
otherString = theLInk.Href;
otherString += " - " + theLInk.ResolveClientUrl(theLInk.Href);
}
Trace.Write(String.Format("{0} - {1} - {2} - {3} - {4}",depth,total,c.GetType(),c.ToString(),otherString));
}
堆棧跟蹤
[HttpException (0x80004005): Cannot use a leading .. to exit above the top directory.]
System.Web.Util.UrlPath.ReduceVirtualPath(String path) +8886247
System.Web.Util.UrlPath.Reduce(String path) +52
System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative) +214
System.Web.UI.Control.ResolveClientUrl(String relativeUrl) +180
System.Web.UI.HtmlControls.HtmlLink.RenderAttributes(HtmlTextWriter writer) +74
System.Web.UI.HtmlControls.HtmlLink.Render(HtmlTextWriter writer) +42
System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +27
System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) +8703574
System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +25
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +134
System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +19
System.Web.UI.HtmlControls.HtmlHead.RenderChildren(HtmlTextWriter writer) +17
System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer) +32
System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +27
System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) +8703574
System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +25
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +134
System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +19
System.Web.UI.Control.Render(HtmlTextWriter writer) +10
System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +27
System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) +8703574
System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +25
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +134
System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +19
System.Web.UI.Page.Render(HtmlTextWriter writer) +29
FileBasePage.Render(HtmlTextWriter writer) +2331
FileDetails.Render(HtmlTextWriter writer) in c:\inetpub\V5 - Development\Plugins\Dashboard\FileDetails.aspx.cs:690
System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +27
System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) +8703574
System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +25
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1266
當你得到這個錯誤?我們是在談論生產場地,還是仍處於開發階段?這個錯誤何時開始顯示? – walther
當你遞歸的時候,我會認爲這是「深度+1」 - 你不需要這個。 – TheGeekYouNeed
Win2k8 r2/iis7.5預生產。這是全新的安裝。 – scaryman