C# 如何从资源文件创建超链接?
我有一些从资源文件加载的文本。通常,为了获得动态内容,我会使用:C# 如何从资源文件创建超链接?,c#,asp.net,hyperlink,C#,Asp.net,Hyperlink,我有一些从资源文件加载的文本。通常,为了获得动态内容,我会使用: string.Format(GetLocalResourceObject("SomeText"), PhoneNumberAsString) 我想对链接做同样的操作,只是链接需要与应用程序相关,因为我有像mysite.com/page.aspx和mysite.com/fr/page.aspx这样的URL 我通常使用。 这似乎是一个好的做法,还是有其他方法来实现我正在做的事情?我不知道我是否应该对资源文件中有HTML感到高兴。
string.Format(GetLocalResourceObject("SomeText"), PhoneNumberAsString)
我想对链接做同样的操作,只是链接需要与应用程序相关,因为我有像mysite.com/page.aspx
和mysite.com/fr/page.aspx
这样的URL
我通常使用。
这似乎是一个好的做法,还是有其他方法来实现我正在做的事情?我不知道我是否应该对资源文件中有HTML感到高兴。由于您没有发布代码,我猜您可能在某个地方有一个超链接WebControl对象,您正在点击ToString()。如果是这种情况,您可以使用其
myHyperLinkControl.NavigateUrl
属性访问与其关联的URL
如果您在资源中使用squiggle/tilde存储链接(这很好),那么您可以使用应用程序位置替换squiggle。如果你有一个控件/页面,那么你可以很容易地调用它的ResolveURL方法(使用波浪号并自动替换它)。如果你没有控件/页面引用,那么有一些现有的解决方案,这里有一些讨论:我想这就是你想要的:
Server.MapPath("~/page.aspx")
这将在您的aspx和后台代码中起作用。我真的不明白您的问题您是在问如何复制~功能吗?如果是这样,请阅读这个问题,你肯定给了我一个解决方案,现在的问题是我在质疑我的做法。请查看我的代码更新。我想我的问题是我是否应该在资源文件中包含链接HTML。根据您的编辑,我不确定这是否应该是一个单独的问题。老实说,我已经有一段时间没有接触ASP.NET了,所以我不确定处理这个问题的最佳方法,特别是如果你的链接是文本的一部分。也许你可以有3个独立的资源(在链接文本之前,请联系我们链接URL,链接文本),你可以把链接HTML放在你的标记中。您可以通过引用共享多个对“联系我们”URL的引用。但也许你最好把它作为一个新问题,这样更有经验的人可以找到并回答它。啊,我看你已经编辑了很多问题。希望有一个很好的实践。我知道如果我成功了,我可能会直接使用单独的控件来处理外观/标记,并留下用于填充文本内容或共享URL的资源。哈哈,我完全有你提到的三个资源!!然后我觉得它看起来太乱了,所以我把它撕下来,把HTML放在了资源中!但你是对的,这更像是一个资源最佳实践问题,因此我将提出一个新问题,以获得我的答案,谢谢你的帮助!
If you would like more than 1000 users please <a href="{0}">call our sales team</a>.
Server.MapPath("~/page.aspx")