我有以下代码:
public class NavigationPath
{
private string menuItems = "<li>" +
"<a href=\"#\">home</a>" +
"</li>";
Run Code Online (Sandbox Code Playgroud)
但我希望:
public class NavigationPath
{
private string menuItems = "<li>" +
"<a href=\"" + ResolveClientUrl("~/home.aspx") + "\">re</a>" +
"</li>";
Run Code Online (Sandbox Code Playgroud)
但是,我无法在Class中使用ResolveClientUrl.有任何想法吗?
如何在通用.ashx处理程序中将文件的虚拟路径解析为适合浏览器的路径?
例如,我想转换:
~/asp/ClockState.aspx
Run Code Online (Sandbox Code Playgroud)
成
/NextAllowed/asp/ClockState.aspx
Run Code Online (Sandbox Code Playgroud)
如果我是WebForm Page,我可以打电话ResolveUrl:
Page.ResolveUrl("~/asp/ClockState.aspx")
Run Code Online (Sandbox Code Playgroud)
解析为:
/NextAllowed/asp/ClockState.aspx
Run Code Online (Sandbox Code Playgroud)
但我不是WebForm页面,我是一个通用的处理程序.你知道,IHttpHandler注入各种东西的那个对象:
public class ResetClock : IHttpHandler
{
public void ProcessRequest (HttpContext context)
{
//[process stuff]
//Redirect client
context.Response.Redirect("~/asp/ClockState.aspx", true);
}
public bool IsReusable { get { return false; } }
}
Run Code Online (Sandbox Code Playgroud)