Как в Silverlight указать путь к ресурсу относительно корня сайта? - CodeHelper

Как в Silverlight указать путь к ресурсу относительно корня сайта?

2

Требуется установить на сайт Silverlight видео плеер. Этому плееру нужно указать путь к видео-файлу. Файл xap лежит в папке ClientBin, а видео-файл — в папке /Content/Video/example.wmv. Для вставки silverlight на страницу используется такой код:

<object data="data:application/x-silverlight-2,"
        type="application/x-silverlight-2" 
        width="640" height="480">
    <param name="source" value="/ClientBin/VideoPlayer.xap"/>
    <param name="background" value="white" />
    <param name="initParams" value="m=/Content/Video/example.wmv" />
    <param name="minruntimeversion" value="2.0.31005.0" />
    <a href="http://go.microsoft.com/fwlink/?LinkId=124807"
       style="text-decoration: none;">
        <img src="http://go.microsoft.com/fwlink/?LinkId=108181" 
             alt="Get Microsoft Silverlight" 
             style="border-style: none"/>
    </a>
</object>

Выделенный код — это путь к видео файлу. Пытаюсь указывать его разными способами — так:

m=/Content/Video/example.wmv

или так

m=Content/Video/example.wmv

Но в итоге, плеер воспринимает этот путь как относительный и ищет видео в папке:

/ClientBin/Content/Video/example.wmv

вместо

/Content/Video/example.wmv

Новые ответы


0

Сама промучилась три дня, пока дошло. Может кому пригодится. У меня работает. Код для C# public avideoplayer() {//Здесь добавляется все, что кому необходимо, типа //InitializeComponent(); string vpsourse = string.Format(@"{0}/{1}", GetBaseAddress(), "test.wmv"); mediaElement.Source = new Uri(vpsourse, System.UriKind.RelativeOrAbsolute);} public static string GetBaseAddress() { string strXapFile = @"/ClientBin/xap_sourse.xap"; string strBaseWebAddress =App.Current.Host.Source.AbsoluteUri.Replace(strXapFile, ""); return string.Format(@"{0}/{1}", strBaseWebAddress, @"Video");}

2

Нужно указывать полный абсолютный пусть к файлу (вместе со схемой и доменом). Например, так:

<object data="data:application/x-silverlight-2," 
        type="application/x-silverlight-2" width="640" height="360">
    <param name="source" value="/ClientBin/VideoPlayerM.xap"/>
    <param name="background" value="white" />
    <param name="initParams" 
        value='m=<%=Request.Url.Scheme%>://<%=Request.Url.Authority%><%=Url.Content("~/Content/Video/example.wmv")%>' />
    <param name="minruntimeversion" value="2.0.31005.0" />
    <a href="http://go.microsoft.com/fwlink/?LinkId=124807" style="text-decoration: none;">
        <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style: none"/>
    </a>
</object>

v1.7.123.556
© 2009—2010 CodeHelper FAQ | О сайте | Обратная связь | История изменений | Статьи
Creative Commons LicenseМатериалы сайта распространяются под лицензией Creative Commons Attribution-Share Alike 3.0 Unported.