作者kting0918 (kaiting)
看板C_Sharp
標題[問題] Silverlight中的Assembly及StreamReader
時間Mon Nov 8 20:59:31 2010
大家不好意思,因為開發Silverlight專案到一半問題不能解決,
只好來這樣求問大家的意見=口=
就是我發現Silverlight是不是因為網頁的關係,
所以任何讀取本機伺服器的檔案都有一點困難,
原本的程式碼像是這樣:
StreamReader sr = new StreamReader("CommandTable.txt");
while (sr.Peek() != -1)
{
string str = sr.ReadLine();
string[] stp = str.Trim().Split(',');
List<ICommand> cmdlist = new List<ICommand>();
for (int i = 1; i < stp.Length; i++)
{
cmdlist.Add((ICommand)Assembly.Load("SilverlightApplication1").
CreateInstance("SilverlightApplication1." + stp[i]));
}
CmdDic.Add(stp[0], cmdlist);
}
這一段之中有兩個錯誤,其中一個是StreamReader()不允許直接讀檔案
(可是我要資源檔阿= =)
另外一個是Assembly的問題,她寫IO.FileLoadException無法載入檔案或組件
"SilverlightApplication1...."
原本以為這兩個應該是兩個問題,但是都跟讀取本機資源有關,
這件事情讓我有點納悶是不是有關聯性....
所以來請教大家的看法,不知道有沒有比較好的解法呢?謝謝=)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.19.42
2F:→ popmentos:erlight-loading-external-assemblylibrary-dynamically 11/08 22:06
3F:→ popmentos:這一篇好像有關,好像要透過非同步呼叫服務 11/08 22:07
4F:推 ashram:安全性的關係silverlight不允許直接讀取外部檔案 11/08 22:11
5F:→ ashram:如果resourece內容不會變動,可以包進專案裡 11/08 22:12
6F:→ ashram:如果是會變動的可以用WebClient來取得檔案 11/08 22:13
7F:→ ashram:不過如果跨網域的話 還要考慮原則檔clientaccesspolicy.xml 11/08 22:15
8F:→ kting0918:QAQ 我以為這個架構很美 但是結果居然如此唉唉 11/08 23:31
9F:→ kting0918:謝謝大家QAQ 11/09 00:00
10F:→ ashram:silverlight是N-Tier架構 對程式撰寫維護其實有諸多好處 11/09 08:51
11F:→ ashram:只是不習慣此架構的話 就要多點時間上手了 11/09 08:51