将runat =“server”添加到HTML标签以获得ASP.net中的相对路径是一个优雅的解决方案吗?

我有几个ASP.Net用户控件,我在新网站的不同位置使用.这些用户控件有这样的链接
<a href="daily/panchang/"></a>

如果usercontrol用于各个子目录中的页面,则相对路径不起作用,我不想在路径中提供我的完整网站名称.所以我这样做了

<a href="~/daily/panchang/" runat="server">

现在ASP.Net’〜’标记可以正常解析根路径.

是否可以标记我需要使用runat =“server”解析根路径的所有HTML标记,或者您知道更好的HTML方式吗?

谢谢

解决方法

我不会说它是否是一个优雅的解决方案,我只是在System.Web中指出一个替代方案:
<a href="<%= VirtualPathUtility.ToAbsolute("~/daily/panchang/") %>">

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些