1

コールバックのある WCF サービスがあります。次に、Callbackfunction を呼び出しますが、それ以外はすべてうまく機能します。次に、リストを渡そうとしますが、コールバックは呼び出されませんが、スローされる例外はありません。他のすべてが正常に機能するため、Callback オブジェクトは機能しています。リスト内のオブジェクトと同じクラス オブジェクトをプッシュすることもできます。Class オブジェクトは として宣言され[DataContract]、Propertiesは として宣言されます[DataMember]。また、リストをループしました。これは通常、Entity Framework によって生成されます。

    //IService
    [ServiceContract(CallbackContract = typeof(ICallbackService))]
    public interface IService
    {
        [OperationContract]
        void Login(string username, string password);

        [OperationContract]
        void RequestCards(Guid sessionID);
    }

    //Service
    public void RequestList(Guid sessinID)
    {
        User user = Users.FirstOrDefault(x => x.ID == sessinID);
        if (user != null)
        {
            user.Callback.PushList(DBCtx.GetAllEntitys());
        }
    }

    //ICallbackService
    public interface ICallbackService
    {
        [OperationContract]
        void LoginResult(Guid sessionID);

        [OperationContract]
        void PushList(List<Card> entitys);
    }
4

1 に答える 1