2015-12-01 71 views
1

我需要一個Actor來實現多個接口。這可能嗎?多個IActor接口

目前,當我試圖使Actor類型實現從從IActor派生其他接口派生的接口,我得到它實現了多個接口,並ActorServiceAttribute需要被用於區分消息。添加ActorServiceAttribute不會刪除錯誤消息。

[編輯]

我相信我解決了這個問題。錯誤令人困惑。您需要直接在Actor類型上實現兩個接口。構建時發現似乎並沒有通過接口層次來枚舉IActor

回答

0

感謝您報告問題。你能提供關於你的界面層次的信息嗎?使用有效的服務名稱在actor上添加ActorServiceAttribute應該解決了錯誤。默認情況下,參與者服務使用參與者接口進行命名。在這種情況下,由於有兩個由角色實現的不同角色接口(IBaseActor,IDerivedActor),因此運行時無法確定角色服務的命名。這是因爲在客戶端,可以創建ActorProxy或ActorProxy。

+0

我似乎無法像上面所描述的那樣重現它。 'ActorServiceAttribute'正在修復它。也就是說,'Actor1':'IActorSub':'IActorBase':'IActor'產生錯誤。 我認爲現在錯誤是有道理的。儘管這裏有一個繼承鏈,但IActorSub和IActorBase接口最終都實現了IActor。 – wasabi