我有一个应用程序向用户发送电子邮件,以便他们可以访问Web表单。在电子邮件中,只有指向此表单起始页的链接。目前,我有表格位置硬编码的价值。部署应用程序后,我知道它位于inetpub / wwwroot / appName中,这会产生一个serverip:appPort / appName的URL。
获取serverip的C#是什么:我需要的URL的appPort部分?
我认为server.mappath()可能有效,但由于某种原因,即使我有必要的引用,我也无法访问该方法。
注意:我将在几个不同的服务器上部署此应用程序,并且实际上只是不希望每次重新部署时都必须对IP进行硬编码。
答案 0 :(得分:3)
尝试
HttpContext.Current.Request.ServerVariables(“HTTP_HOST”),这应该为您提供主机名。
此链接将向您展示如何获取您(可能)获取端口和应用程序所需的所有密钥(如果您还没有它们)。 http://msdn.microsoft.com/en-us/library/system.web.httprequest.servervariables.aspx