在工作流中序列化 POCO

发布于 2024-10-30 18:09:49 字数 414 浏览 3 评论 0 原文

我只是想知道,我尝试从 MVC 应用程序向我的 WF4 工作流程提供 POCO 对象,它工作得很好,直到我尝试保留它。我正在使用中加载我的对象,当我持久化工作流程时,它告诉我它无法持久化,因为上下文不再存在。谁能告诉我为什么需要 Context 来序列化对象?

获取我的对象包括这样的内容:

public User GetUser(string userName)
    {
        return (from user in _entities.Users.Include("Values").Include("RoleRelations")
                where user.Name == userName
                select user).FirstOrDefault();
    }

I was just wondering, I tried giving a POCO Object to my WF4 workflow from my MVC Application, which worked just fine until I tried persisting it. I was loading my Object in a Using and when I persisted the workflow, it told me that it can not be persisted because the context does not exist anymore. Can anyone tell me why it needs the Context to serialize an object?

Getting my object with includes like this:

public User GetUser(string userName)
    {
        return (from user in _entities.Users.Include("Values").Include("RoleRelations")
                where user.Name == userName
                select user).FirstOrDefault();
    }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不喜欢何必死缠烂打 2024-11-06 18:09:49

如果没有上下文,如果您在尝试序列化时不急于加载包含的所有相关数据,它将尝试从上下文中延迟加载它们。如果上下文已被销毁,则 POCO 对象无法完全填充,因此无法干净地序列化。

Without the context if you're not eager loading all relevant data for your includes when you try to serialize it will try to Lazy-load them from the context. If the context has already been destroyed the POCO object cannot be fully populated, and so cannot be cleanly serialized.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文