我創建了一個從ServicedComponent派生的.net類,並將它註冊到COM +。該組件實現的接口有一個返回IDataReader的方法。當我從我的客戶端應用程序調用服務組件時,我可以調用返回IDataReader的方法,但沒有任何問題,但只要我在該對象上調用某個方法,就會得到以下異常: 「System.Runtime.Remoting.RemotingException:This遠程代理服務器沒有通道接收器,這意味着服務器沒有正在監聽的註冊服務器通道,或者該應用程序沒有合適的客戶端通道與服務器交談。「.net COM +返回IDataReader對象
我公開地破解了我的代碼,並意識到如果我創建了自己的可串行化的IDataReader實現(具有Serializable屬性),它將工作。如果實現派生自MarshalByRefObject,則失敗。
那麼,是否有可能通過COM + ServicedComponents的引用返回標準.net對象,如果有的話,我需要做些什麼來實現它?