2011-11-04 25 views
-3

我想創建一個從應用程序的本地目錄加載一些XML配置文件的Silverlight(Framework 4.0,C#和Visual Studio 2010)應用程序。我需要代碼加載特定目錄中的所有文件。Silverlight - 使用文件

我不能用System.IO Directory.GetFiles來做,我該怎麼做?

+0

請出示您的代碼並詢問您遇到困難的具體問題。 –

+0

我不知道你爲什麼投下來,我認爲這個問題是明確的。即時通訊新的Silverlight,我沒有股票在代碼中。我需要的是加載一個字符串[]與本地文件夾中存在的文件。本地=服務器端文件。 –

回答

1

Silverlight代碼在瀏覽器中運行,並且您不能隨意「在本地打開文件」 - 當您使用它時,在Bing上使用silverlight open file進行搜索時會有大量教程可用。

就你而言,你似乎想從託管Silverlight應用程序的服務器讀取文件。它受到安全限制的允許,因此請向您的來源提出Web請求並獲取數據。也就是說,使用WebClient.DownloadStringAsync - 即見Silverlight FlickR Example(由Alex Golesh @在an MSDN forum post提供的鏈接)

+0

感謝您的回覆。實際上,我正在使用Lync 2010上的一個插件進行工作。Xap安裝在客戶端計算機上(所以客戶端和服務器都是同一臺PC)。它就像一個silverlight incrusted在一個lbrync控制器上的一個lync同步會話上。 –

+0

遠離我得到這個是:string [] files = from Directory.EnumerateFiles(Environment.CurrentDirectory +「\ Languages」,「*。xml」)中的文件 select file; –

+0

你是對的,現在有辦法做我想要的。更重要的是,我可以使用Web客戶端下載,但是如果文件(無論內容,但至少名稱文件和路徑)在項目中引用。沒有安全問題,沒有辦法像這樣做。非常感謝 :) –

0

如果你看一下在客戶端加載文件,使用隔離儲存。這提供了一個虛擬文件系統,可讓您存儲數據,例如雜項數據,應用程序設置和整個對象。更多信息,請參閱Isolated Storage

如果您在服務器站點尋找工作,則需要一個後端Web服務來管理這些文件並使用MapPath