2010-10-12 41 views
11

我創建了一個小的Silverlight 4.0/RIA Services應用程序並對其進行了測試。我在家裏的一臺機器上開發了該應用程序,並需要將其移至工作中的生產領域。我將它推送到源代碼庫,然後將其克隆到工作中的開發機器上。它在兩個位置都沒有錯誤地構建。提供的URI方案「文件」無效期望'http'

當我嘗試在新位置進行調試時,會發生此問題。在對域上下文第一「的load()」方法,我得到以下錯誤:

The provided URI scheme 'file' is invalid expected 'http' 

我得到調試器正在嘗試使用基於URI而不是HTTP URI文件運行。但爲什麼?我該如何解決它?

通過搜索返回一些類似的錯誤關於無效的URI方案,但他們沒有幫助我解決這個具體問題。

感謝, 吉姆

回答

27

確保您的啓動項目是Web項目,而不是Silverlight項目本身。

+4

或者,如果在瀏覽器外調試,則將Silverlight項目設置爲啓動項,但在Silverlight項目的設置中,在「調試」下,將服務器項目設置爲瀏覽器外應用程序而不是Silverlight項目。不完全直觀,但你必須這樣做來擺脫「file://」問題。 – JoeCool 2011-09-02 15:01:00

+1

感謝幫助。我只是想補充一點,以防有人得到它。我的錯誤開始發生時,我刪除了我的suo文件,我想對這個文件的啓動項目的引用。 – ramnz 2012-03-09 17:47:33

0

我敢肯定你應該參考一個服務器端的文件,而不是本地文件。此外,大多數Silverlight應用程序不允許訪問本地文件。

+0

該程序沒有寫入到訪問本地文件。 Silverlight模塊正在進行RIA服務方法調用時發生該錯誤。這對原始開發環境起作用,並且在轉移到另一個完全相同的環境(但據我所知,但顯然不是很完美)後才失敗。 – 2010-10-13 02:00:53

1

可能發生的事情是,Silverlight客戶端應用程序試圖使用「file://」協議與服務器端RIA Services Web服務進行通信。
您是否直接從服務器的文件系統啓動Silverlight XAP文件,而不是通過「http://」URL?Silverlight正在嘗試使用與用於獲取其XAP文件的協議相同的協議
當從Visual Studio啓動應用程序時,將Web項目設置爲啓動項目而不是Silverlight(客戶端)項目。

1

如果您正在運行OOB(Out Of Browser)並且想要調試,那麼您需要將您的Silverlight客戶端項目設置爲啓動項目,也是在服務器項目中,右鍵單擊您的'* TestPage.html'和'Set as Start Page'然後,如果出現錯誤...

The provided URI scheme 'file' is invalid expected 'http' 

然後打開Silverlight客戶端的屬性頁,並選中「啓用正在運行的應用程序瀏覽器」,點擊保存,然後再次檢查設置,它應該可以工作。 請參閱... http://blogs.msdn.com/b/deepm/archive/2010/07/16/debugging-an-oob-silverlight-business-application.aspx

+0

就像我在ZunTzu評論中上面發佈的那樣,你也必須進入silverlight項目的設置,在「Debug」下將服務器項目設置爲Out-of-browser應用程序而不是silverlight項目。 – JoeCool 2011-09-02 15:03:16

相關問題