代码之家  ›  专栏  ›  技术社区  ›  David

如何序列化子音速生成的类?

  •  0
  • David  · 技术社区  · 14 年前

    我想在WCF中使用亚音速。我可以将数据放入列表,但不能将该数据返回到客户端,它的错误是

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

    我试图通过poco对象向wcf发送和检索数据,但当我尝试使用子音速生成的类时,它不再工作了,所以我认为它有一些问题。

    2 回复  |  直到 14 年前
        1
  •  0
  •   Jürgen Steinblock    14 年前

    我假设这不是“真正的”例外。我对WCF不熟悉,但也许你在日志中发现了一些东西。

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

    最有可能的情况是,WCF试图序列化具有可为空属性的子音速类。 子音速类的属性标记为xmltattribute,如果要序列化可为空的类型,则会引发错误。空值只能作为XmlElements序列化。

    如果它与一个没有可空属性的子音速生成的类一起使用,请尝试。

        2
  •  0
  •   David    14 年前

    在我下载了子音速的源代码并调试到它的subsonic.core之后,我发现它出错了,因为getbody将创建该类的实例,并且在其构造函数内尝试连接到它无法访问的数据库;客户机无权访问数据库。

    现在,我正在用亚音速创建映射类,并返回poco。

    推荐文章