2012-01-05 1 views
2

MVC3 면도기 뷰에 Silverlight 앱을 표시하는 데 문제가 있습니다.Silverlight 응용 프로그램이 MVC가 아닌 aspx 페이지에서 작동합니다. 면도기

응용 프로그램을 추가하고 테스트 페이지 (내 경우 TestAppTestPage.aspx)를 생성하면 페이지를 탐색 할 수 있고 응용 프로그램이 제대로 작동합니다.

<div id="silverlightControlHost"> 
    <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%"> 
     <param name="source" value="ClientBin/TestApp.xap"/> 
     <param name="onError" value="onSilverlightError" /> 
     <param name="background" value="white" /> 
     <param name="minRuntimeVersion" value="5.0.61118.0" /> 
     <param name="autoUpgrade" value="true" /> 
     <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=5.0.61118.0" style="text-decoration:none"> 
      <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/> 
     </a> 
    </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div> 

내가 크롬 개발자 콘솔을 보면, 내가 다른 볼 수있는 유일한 일이 있습니다 : 내가 MVC 면도기보기로 동일한 코드를 복사 한 경우, 컨트롤러 액션을 찾아, 아무것도 응용 프로그램과 함께 발생하지 "기타로 해석되었지만 MIME 유형이 정의되지 않은 채로 전송 된 리소스"라는 경고 메시지가 나타납니다. 이것이 관련이 있는지 확실하지 않습니다.

Silverlight 및 MVC에 대한 다양한 가이드를 살펴본 결과 코드의 관련 부분을 복사해도 결과가 없습니다. 나는 상대 경로를 사용하여 경로를 조정하고 놀았습니다. 또한 IIS 설정을 확인했지만 aspx 테스트 페이지에서 정상적으로 작동하기 때문에 원인이 아닌 것으로 생각됩니다.

+0

이것이 문제가 될지 확실하지 않지만 Url.Content를 사용해 보셨습니까? 예 : "/> Url.Content인지 확실하지 않은 MVC 2 앱에서 파생했습니다. MVC 3에서 여전히 선호. –

+0

그게 고쳐 주셔서 고마워. 답변을 답장으로 보내려면 허용 된 것으로 표시 할 수 있습니다. 경로가 틀리면 다른 경로 (value = "~/ClientBin/TestApp.xap"등)를 사용하여 재생할 때 앱에 404가 반환되기 때문에 이상합니다. 그래서 나는 그렇지 않을 때 길을 찾았습니다. 다시 한번 감사드립니다. – mfanto

답변

4

mfanto의 의견을 바탕으로 내 의견을 대답으로 바꿨습니다.

내 의견에 추측했지만 외부 파일에 Url.Content를 사용하지 않을 때 문제가 발생했습니다. 따라서 픽스는 다음과 같은 것을 사용하는 것입니다

<param name="source" value="<%= Url.Content("~/ClientBin/TestApp.xap") %>" /> 

MVC 2 응용 프로그램에서 나온 것입니다.

관련 문제