2010-05-26 3 views
1

웹 양식에 액세스 할 수 있도록 사용자에게 전자 메일을 보내는 응용 프로그램이 있습니다. 이메일에는이 양식의 시작 페이지에 대한 링크 만 있습니다. 현재, 양식 위치 값을 하드 코딩했습니다. 앱이 배포되면 inetpub/wwwroot/appName에 있다는 것을 알게되고, 그 결과 serverip : appPort/appName의 URL이됩니다.ASP.NET MVC 배포 된 응용 프로그램 서버 주소

내가 필요로하는 serverip : appPort 부분을 얻으려면 C#이 필요합니까?

나는 server.mappath()가 작동한다고 생각하지만, 필자는 필요한 참조가 있지만 어떤 이유로 그 메소드에 접근 할 수 없다.

참고 :이 응용 프로그램을 여러 대의 서버에 배포하고 재배포 할 때마다 IP를 하드 코딩하지 않으려 고합니다.

+1

제목 줄에 태그 (C#)를 넣지 마십시오. 그것이 우리가 태그를 가지고있는 것입니다. –

+0

죄송합니다. –

답변

3

HttpContext.Current.Request.ServerVariables는 ("HTTP_HOST")이 당신에게 호스트 이름을 제공해야보십시오.

이 링크는 포트 및 응용 프로그램을 얻는 데 필요한 모든 키를 얻는 방법을 보여줍니다 (아직 포트가없는 경우). http://msdn.microsoft.com/en-us/library/system.web.httprequest.servervariables.aspx

+0

다음과 같이 유용 할 수도 있습니다. Request.ServerVariables [ "SERVER_NAME"] Request.ServerVariables [ "SERVER_Port"] Request.ServerVariables [ "QUERY_STRING"] – Jay

관련 문제