根据服务器名称更改链接

时间:2015-07-30 17:48:47

标签: c# asp.net hyperlink

只是想知道这是否可行。我正在为我正在研究的C#/ ASP.Net项目提供3个环境;发展,分期和生产。最近的一项发展是我的用户想要一个指向外部报告应用程序的链接。报告应用程序还有3个环境,因此每次将C#/ ASP复制到其中一个服务器时,我都要记得更改链接。

因此,想象一下如下所示的超链接:

<asp:HyperLink id="ReportLink" ForeColor="Snow" NavigateUrl="https://d-mysite.com/cgi-bin/rpt.dll?b_action=Viewer" Text="Go To My Reports" Target="_new" runat="server"/>

在开发中测试之后,我必须记得在发布到Staging之前将URL更改为https://s-mysite.com,然后在发布到Production之前将其更改为https://p-mysite.com

有没有办法确定它正在运行哪个服务器,以便我可以使用IF语句来确定使用哪个链接?

1 个答案:

答案 0 :(得分:0)

将服务器名称存储为Web配置中的应用程序设置,然后在代码中引用它。您可以设置转换以更改每个环境的服务器名称。

在你的web.config中:

<appSettings>
    <add key="Server" value="https://d-mysite.com" />
</appSettings>

您的链接:

<asp:HyperLink id="ReportLink" ForeColor="Snow" NavigateUrl="<%$ AppSettings:Server %>/cgi-bin/rpt.dll?b_action=Viewer" Text="Go To My Reports" Target="_new" runat="server"/>