WCF没有响应实体框架对象

时间:2010-10-10 18:10:28

标签: wcf

好的,当有人在我的WCF服务上调用“Authenticate”(使用http)时,我有以下对象。

[DataContract]
public sealed class SecurityContext
{
    private Guid _tolken;
    private User _user;
    private ICallbackContract _callbackContract;

    [IgnoreDataMember]
    public ICallbackContract CallbackContract
    {
        get { return _callbackContract; }
    }

    [DataMember]
    public User User
    {
        get { return _user; }
        set { _user = value; }
    }

    [DataMember]
    public Guid Tolken
    {
        get { return _tolken; }
        set { _tolken = value; }
    }

    public SecurityContext(Guid tolken, User user, ICallbackContract callbackContract)
    {
        Asserter.IsNotNullArgument(tolken, "tolken");
        Asserter.IsNotNullArgument(user, "user");
        Asserter.IsNotNullArgument(callbackContract, "callbackContract");

        _tolken = tolken;
        _user = user;
        _callbackContract = callbackContract;
    }
}

出于某种原因,当我进行异步调用时,它超时并且我从未得到响应,但是当我注释掉User对象(它是一个Entity Framework对象)时,它工作正常。

以前有人经历过这个吗?

2 个答案:

答案 0 :(得分:2)

好的,所以我想出了问题所在。显然,实体模型默认设置为Lazy load。这导致数据在发送到客户端时出现问题......

我在实体模型创建过程中解决了这个问题......

_entities.ContextOptions.LazyLoadingEnabled = false;

答案 1 :(得分:0)

是User类有DataContract属性吗?