Mar*_*rco 18 c# asp.net class relative-path resolveclienturl
我有以下代码:
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.有任何想法吗?
Pau*_*wan 49
ResolveClientUrl您也可以使用VirtualPathUtility.ToAbsolute("~/home.aspx");哪个会给您与调用相同的结果,而不是调用Page对象(或任何控件)ResolveUrl("~/home.aspx");
ResolveClientUrl是System.Web.UI.Control类的成员,因此可以直接访问:
var url = ResolveClientUrl("~/Some/Url/");
Run Code Online (Sandbox Code Playgroud)
在asp.net页面的代码中调用时.
要在类中使用它,您必须将Page(或页面上的控件)传递到其构造函数中的类中.即便如此,我也不确定你是否能按照你指示的方式使用它.你可能不得不做类似的事情:
public class NavigationPath
{
private string menuItems = string.Empty;
public NavigationPath(Page page)
{
menuItems = "<li>" + "<a href=\"" + page.ResolveClientUrl("~/Home.aspx") + "\">home</a>" + "</li>";
}
}
Run Code Online (Sandbox Code Playgroud)
然后在你的asp.net页面里做类似的事情:
var navPath = new NavigationPage(this);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17658 次 |
| 最近记录: |