c# – WCF,如何实例化DataContract中的所有对象? [OnDeserializing]不起作用

所以我有一些像这样的代码.

[DataContract]
public class Example
{
    SomeClass _someVar;

    [OnDeserializing]
    public void OnDeserializing(StremingContext c)
    {
        _someVar = new SomeClass();
    }
}

这是有趣的事情,如果我使用Visual Studio 2010中的测试调试客户端,则调用OnDeserializing().但是如果我尝试托管我的WCF服务然后从我自己的客户端调用它,它就不会被调用(或者可能不会’t),因为_someVar总是为空.

哎呀!

我还需要做什么?

亲切的问候,
府谷

解决方法

WCF不使用标准的.net序列化,所以我不确定它会调用你的OnDeserializing方法.但是,您可以要求WCF使用XmlSerializer,它应该为您提供所需的行为.看看“控制序列化过程” here.

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...