2010-07-13 68 views
1

我已經看到了一些示例,您可以在aspx和silverlight應用之間傳遞參數以及如何將簡單值傳遞迴aspx。如何在silverlight和asp.net之間傳遞對象

是否可以將泛型類型(如列表集合)從silverlight應用程序傳遞到要拾取的asp​​.net頁面。我已經看過序列化,但不確定這是否是性能最好的方法?

在此先感謝

+0

僅供參考我已經看到了答案張貼在http://stackoverflow.com/questions/354453/pass-objects-to-silverlight-through-server-side-asp-net-code 其中涵蓋JSON /序列化.. 。只是有興趣看看是否有人發現另一種方法 – rlcrews 2010-07-13 23:16:10

回答

0

由於Silverlight是客戶端和ASP.Net是服務器端,你將需要使用序列化,以在二者之間傳遞對象。

我會考慮在Silverlight中使用DataContractSerializer將對象序列化爲XML。然後,您可以推動XML您想要的任何方式:ASPX Web服務,WCF服務,HTTP PUT,在HTML隱藏字段等

+0

布賴恩,你能指出我有關如何去做這件事的任何補充參考?謝謝 – rlcrews 2010-07-14 03:16:30

+0

@randyc:我已經詳細闡述了我的答案。希望能幫助到你。 – 2010-07-14 12:34:28

0

評論: Sharing C# code between Windows and Silverlight class libraries

你的答案將是解決內上市已經提供了相同的問題或幾乎確切。

摘錄:

您不能設置從一個Silverlight裝配到正規的.NET程序集的引用,但你可以這樣做的相反。

因此,創建一個共享的Silverlight程序集並將您的代碼添加到該程序集。現在,您可以將常規.NET和其他Silverlight程序集的參考設置爲共享的Silverlight程序集。

限制是您只能將代碼放在那裏,可以在.NET和Silverlight CLR上工作,但這與共享代碼沒有區別。

禮貌:莫里斯

+0

謝謝喬。在查看他們共享代碼(方法)的例子時,我只想分享一組對象,例如包含名稱年齡身高體重的列表集合,對於多人?我的sl應用程序爲用戶提供了查看多個人的能力,並通過應用程序可以選擇某些人。一個選中的這些名字應該傳回給一個asp.net應用程序供消費和使用。我看到如何共享方法/代碼,但我仍然不確定這將如何適用於類型/數據集合。你能指點我其他的例子嗎? 謝謝。 – rlcrews 2010-07-14 03:27:56

+0

對不起,randyc我一直很忙...目前有限的例子穿越silverlight程序集到.net。不過,我猜測,除了MSFT人員之外,很少有開發人員可以實際進行這種交叉開發。 我會保持睜大眼睛,但是,這是我找到的最接近的解決方案......以滿足您的特定要求。 – 2010-07-19 15:39:43

2

您也可以與您的.aspx頁面的客戶端進行通信,通過編寫腳本的對象......看到Silverlight的HtmlPage.RegisterScriptableObject(string, object)文檔。