0

我的 DAL 中有以下代码:

public List<User> Getuser(int userId)
        {
            using (var context = this.GetDataContext())
            {
                var user = (from u in context.Users.Include("UserRoles")
                            where u.UserId == userId
                            select u).FirstOrDefault();

                context.Detach(user);

                return user;
            }
        }

当调用分离时,我丢失了我试图通过 WCF 发送回客户端的 UserRole 集合。如果我不将对象从上下文中分离出来,我会得到“底层连接已关闭:连接已意外关闭。”。这样做的最佳方法是什么,我可以保留集合而不必再次重新查询它?

4

1 回答 1

1

关闭此操作的延迟加载。您的实体很可能包含其他关系,WCF 也尝试序列化它们。

于 2012-04-09T16:31:48.473 回答