2016-10-28 2 views
3

면도기에서 URL을 인코딩하는 올바른 방법은 무엇입니까? 아래의 시도는 공백을 %20으로 변경하지 않습니다. 면도기에서 URL의 부분 인코딩

survey.Name

는 귀하의 경우 잘 작동합니다 컨트롤러

<a href="~/Survey/Take/@Uri.EscapeDataString(survey.Name)">@survey.Name</a> 
+0

'@Html.Encode (survey.Name) '을 사용하는 경우 – Hackerman

+0

@Hackerman은 여전히 ​​인코딩하지 않습니다. – Tsukasa

+0

@ HttpUtility.UrlPathEncode (survey.Name) –

답변

2

이 같은 Url.Encode를 사용할 수 있습니다 보조 노트로

@Html.ActionLink(survey.Name, "Take", "Survey", new { name = Url.Encode(survey.Name) }, new { }) 

링크가 공간을 인코딩없이 작동합니다. 이메일과 같이 앱 외부에서 링크가 사용될 때이를 인코딩해야합니다.

+0

그래서 링크를 클릭하고 마우스를 가져갈 때도 로컬이면서 외부가 아니기 때문에 현재 공간이 표시됩니다. – Tsukasa

+0

@Tsukasa 광산은 Url.Encode()를 사용할 때 인코딩 된 공백을 보여줍니다. 내 사이드 ​​노트는 링크가 여전히 공백으로 작동한다는 것을 의미했습니다. –