【问题标题】:How to serialize SubSonic generated class?如何序列化 SubSonic 生成的类?
【发布时间】:2010-07-25 00:25:11
【问题描述】:

我正在尝试将 SubSonic 与 WCF 一起使用。我可以将数据放入 List 但我无法将该数据返回到客户端,它的错误是

套接字连接已被释放。对象名称: 'System.ServiceModel.Channels.SocketConnection'。

我尝试通过 POCO 对象向 WCF 发送和检索数据,并且它可以工作,但是当我尝试使用从 SubSonic 生成的类时,它不再工作了,所以我认为它有一些问题。

【问题讨论】:

    标签: wcf subsonic


    【解决方案1】:

    我认为这不是“真正的”例外。我不熟悉 WCF,但也许您在日志中找到了一些东西。

    这里有一篇关于调试WCF的文章http://www.codeproject.com/KB/WCF/DebugWCFApps.aspx

    WCF 很可能正在尝试序列化具有可为空属性的 SubSonic 类。 SubSonic 类的属性被标记为 XMLAttribute,如果要序列化可空类型,则会引发错误。 Nullables 只能被序列化为 XMLElements。

    尝试它是否适用于没有可为空属性的 SubSonic 生成的类。

    【讨论】:

    • 我现在可以在服务端调试,但是当我尝试使用 message.GetBody(new NetDataContractSerializer());
    【解决方案2】:

    在我下载了 SubSonic 的源代码并在其中调试 SubSonic.Core 后,我发现它出错了,因为 GetBody 将创建该类的实例,并且在其构造函数内部尝试连接到它可以连接的数据库'吨;客户端无权访问数据库。

    现在我正在使用 SubSonic 创建映射类并改为返回 POCO。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-21
      • 1970-01-01
      相关资源
      最近更新 更多