我不像你想溝通的方向非常明確:
- 你的「服務器」需要通知新的工作職位的Winforms應用程序已經儲存?
或:
- 您的Winforms應用程序要求的 「服務器」 關於新貼子?
我把「服務器」放在引號中,因爲在WCF世界裏,這是一個用於特定角色的術語。
假設第一個選項,你需要這樣做:
至於操作合同 - 您的Winforms應用程序需要了解新的發佈內容?只是收到新帖子的事實?發佈的全部內容,或只是其中的一部分?
無論如何,您需要在您的WCF服務上定義一個「發佈服務器」可以調用的方法,並將所有相關信息傳遞給Winforms WCF服務器 - 您不希望進行兩個或更多調用只是一個通知。
所以,你的服務合同可能是:
[ServiceContract]
public interface IPostingService
{
[OperationContract]
void NotifyAboutPosting(Posting post);
}
和你Posting
類將是數據的合同:
[DataContract]
public class Posting
{
[DataMember]
public int ID { get; set; }
[DataMember]
public string Description { get; set; }
[DataMember]
public DateTime PostingTimestamp { get; set; }
}
無論您需要兩方之間發送 - 在您的數據定義它合同這是你的服務電話的參數
嗨,謝謝你的回覆。我上面編輯了我的主要帖子。我想要的是,當我的服務器收到消息/事件的新發布時,我需要捕獲該發佈並將其發送到我的winforms應用程序,以通知我,我收到了一條包含其中信息的新發布。 – Thomas
編輯:使用datacontract模式需要導入什麼? – Thomas
@Thomas:'DataContract'位於'System.Runtime.Serialization'命名空間 –