只是想知道这是否可行。我正在为我正在研究的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语句来确定使用哪个链接?
答案 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"/>