簡體   English   中英

需要有關通過 ASP.NET/WCF 將數據獲取到 Silverlight 應用程序的指導

[英]Need guidance on getting data to Silverlight app via ASP.NET/WCF

首先感謝您的幫助。 我已經廣泛研究並沒有找到確定的解決方案,所以我在這里......

基本上我正在開發一個 asp.net (4.0) 應用程序。 一個 web 表單代表一個報告,它分為兩部分: - 一個 div,其作用類似於一個控制面板,其中包含為查詢提供參數的文本框、組合框、日歷等,以及一個用於獲取數據的按鈕。 - 一個包含 silverlight 控制主機的 div。 silverlight 應用程序僅包含自定義數據網格控件。

因此,正如您想象的那樣,用戶提供參數值並單擊按鈕將數據獲取到 silverlight 應用程序的自定義數據網格控件中。 -我知道您可能會問自己,為什么不將控件添加到 silverlight 應用程序並使用 RIA 服務。 無需過多詳細說明,我們需要一個更新的數據網格,我們可以將其添加到我們現有的一些 asp.net 頁面中。

我不知道這樣的最佳做法是什么。 我進行了廣泛的研究,並且考慮了幾種選擇,甚至進行了實驗(沒有成功)。

我想我想做的是有一個 wcf 服務,它只向頁面上的 silverlight 客戶端發送數據。 讓我明確一點,我不需要請求/回復消息交換模式,因為 silverlight 客戶端不會發出任何請求。 在完成此任務的“任務”中,我找到了有關雙工消息傳遞的示例/教程,我認為如果我可以將 asp 頁面設置為服務的客戶端並將 silverlight 應用程序設置為同一服務的客戶端,這些示例/教程可能會很好用。 用戶點擊按鈕,asp頁面的服務引用調用服務獲取數據,然后將數據發送給silverlight客戶端。 我擔心的一個問題是,我找到的所有教程都將消息發送給所有客戶,那么如果兩個人同時訪問該站點怎么辦? 它會更新他們的兩個 sl 應用程序嗎? 我將如何定位正確的客戶?

所以我的問題是任何人都可以提供任何建議、鏈接或其他資源來解決這種情況嗎?

首先,我認為您不需要 Silverlight。 有很多很棒的 UI 控件,例如Telerik RadGrid ,您可以放入現有的應用程序並在一兩個小時內啟動並運行。

話雖如此,如果你真的想完成這項工作,你需要的是在瀏覽器和 Silverlight 中都可以工作的 pub/sub。 看看PubNub 您每天免費獲得 5,000 條消息,並且幾乎可以在任何客戶端(電話、Silverlight、瀏覽器等)中使用簡單的 API。

基本上,您的 Silverlight 客戶端將訂閱“通道”以在過濾器參數更改時收到通知,並且您的表單將通過 JavaScript 或服務器端將消息發布到此通道,告訴訂閱者(在您的情況下為 1)更改的過濾器值. 當 Silverlight 客戶端收到通知時,它會通過 WCF 請求數據。

不過有點hack。 我鼓勵您放棄 Silverlight 並使用 AJAX 網格。 希望這可以幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM