2010-03-18 4 views
0

리소스가 XML 또는 JSON으로 렌더링 될 때 런타임에 URL을 작성하고 싶습니다. 보기가 HTML이고 리소스의 일부만 렌더링 할 때이 작업을 쉽게 수행 할 수 있지만 다른 리소스에 대한 링크가 포함 된 리소스를 렌더링 할 때 호스트 (사이트) 및 리소스 별 URI에 따라 올바른 URL을 동적으로 생성하려고합니다. 부품.URL 또는 링크를 REST로 작성 ASP.NET MVC

<components> 
    <component id = "1234" name = "component A" version = "1.0"> 
     <link rel = "/component" uri="http://localhost:8080/component/1234" /> 
    </component> 
<components> 

'uri'값이 올바른지 어떻게 확인합니까?

답변

1

사용 ControllerContext.HttpContext 현재 요청에 대한 HttpContextBase 잡고 정보를 얻을 수 있습니다 :

var context = ControllerContext.HttpContext; 
var host = string.Format("{0}://{1}:{2}/", 
          context.Request.Url.Scheme, 
          context.Request.Url.Host, 
          context.Request.Url.Port); 

UrlHelper합니다 (Controller 클래스의 참조, Url 특성)를 사용하여 생성 된 URL로 host을 결합한다.

+0

정보 및 질문을 이해해 주셔서 감사합니다 :) – AwkwardCoder