簡體   English   中英

Silverlight客戶端從WCF收到NotFound錯誤

[英]Silverlight client got NotFound error from WCF

關於這個主題有很多文章,但是都沒有幫助我。 我正在嘗試實施可以在沒有“添加服務引用...”的情況下使用的服務,主要是根據hhttp://www.netfxharmonics.com/2008/11/Understanding-WCF-Services-in-Silverlight-2的建議進行的。

我做了一個小項目來重現問題。 http://hotfile.com/dl/96710945/9991ac3/SilverlightApplication8.zip.html

我嘗試了像這樣的解決方案:
-處理Silverlight中的錯誤-跨域策略等

完成所有標准檢查,例如,服務處於活動狀態且可訪問,客戶端成功創建頻道等。

我整整一個星期都在這個問題上,我無法弄清楚。

每一個幫助都是感激的。

Denis,嘗試在您的Web主機項目中創建服務。 在此處添加服務,然后您可以選擇將其添加為Silverlight應用程序中的引用。 只需在SilverlightApplication8.Web中添加服務即可。 右鍵單擊SilverlightApplication8.Web->添加新項目->在左側,選擇Silverlight->啟用Silverlight的WCF服務。 然后添加對您的SilverlightApplication8的引用。

我沒有進行更深入的調查,但是我認為服務實現類類型不好。

所以我的工廠班級看起來像:

公共類TimeServiceFactory繼承System.ServiceModel.Activation.ServiceHostFactoryBase

Public Overrides Function CreateServiceHost(ByVal constructorString As String, ByVal baseAddresses() As System.Uri) As System.ServiceModel.ServiceHostBase
     Dim host As New ServiceHost(constructorString, baseAddresses)

需要在以下位置進行更改:

公共類TimeServiceFactory繼承System.ServiceModel.Activation.ServiceHostFactoryBase

Public Overrides Function CreateServiceHost(ByVal constructorString As String, ByVal baseAddresses() As System.Uri) As System.ServiceModel.ServiceHostBase
    Dim host As New ServiceHost(GetType(TimeService), baseAddresses)

區別在於我沒有傳遞ConstructorString(它具有服務實現類的類型的信息),我傳遞了GetType(TimeService)instate,它提供了正確的類型信息。

暫無
暫無

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

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