2009-12-04 4 views
0

탐색 프레임 워크를 사용하는 Silverlight 응용 프로그램은 URI 매핑을 사용하기 때문에 해당 URL에 매우 아름다운 결말을 갖습니다. 바람직하게는 ".ASPX #"을 제거Silverlight 탐색 응용 프로그램에서 URL의 앞부분을 수정하는 방법은 무엇입니까?

http://server:port/SilverlightPage.aspx#/uri-mapped-portion 

가 어떻게이 "SilverlightPage.aspx #"부분이 더 좋은 볼 수 있습니다 :하지만 프론트 엔드는 여전히 같은 불쾌한 보인다? 그냥 될 수 있도록

답변

2
당신은 ASP.NET MVC의 일부 또는 일반 ASP.NET으로 사용할 URL 라우팅을 사용할 수

http://msdn.microsoft.com/en-us/library/cc668201.aspx

편집 : 대답하기 위해 귀하의 질문에 대한 답변 :

나는이 작업을하지는 못했지만 "WebForms에서 라우팅 사용"절을 자세히 살펴보면됩니다. 내가 당신이

routes.Add("SomeRoute", new Route("SilverlightPage",new CustomRouteHandler("~/SilverlightPage.aspx"))); 
+0

감사합니다.하지만이 경우 라우팅 문자열은 어떻게 생겼을까요? – Dov

1

대신 SilverlightPage의 기본 페이지를 사용할 수있는 것은 :

http://server:port/#/uri-mapped-portion

예뻐 페이지를 얻을 수있는 또 다른 방법도 꽤 URL을 가지고 ASP.NET MVC 같은 것을 사용하는 것입니다 . 그럼 당신은 뭔가를 할 수 :

http://server:port/Silverlight/App1/#/uri-mapped-portion

+0

그러나 심지어 그 방법 중 하나를 사용할 수 있습니다 수집하는 것은에서 "#"을 제거 할 수있는 방법이 없습니다에서? – Dov

+1

#은 페이지를 다시로드하지 않고 URL을 변경할 수 있다는 것을 의미하므로 중요합니다. Silverlight와 같은 구성 요소는 페이지를 실제로 다시로드하지 않고도 URL을 변경하는 데 사용되는 트릭입니다. #은 클라이언트 쪽에서 만 평가되므로 그 이유가 작동합니다. – Bryant

+0

흠, 가장 쉬운 방법이기 때문에 첫 번째 제안을 시도했지만 이제는 URL에 Default.aspx #가 표시됩니다. 지금 #이 왜 있는지는 알지만 "Default.aspx"는 무엇입니까? 이것은 엄격하게 ASP.NET 개발 서버에서 실행 한 결과이며 길 아래에있는 정직함에서 유용성을 가진 IIS 서버에 드롭 할 때 표시되지 않습니다. – Dov

관련 문제