Ano*_*yes 11 serialization json wsdl asp.net-web-api
我有一个Web api控制器类,我在从Web api控制器的WSDL生成的代理类上调用一个方法,然后返回一个WSDL代理类中定义的类型的对象.
但返回的xml/json包含代理类的私有成员
私人会员是
private string companyField;
private string soldBPField;
private string fromDateField;
private string toDateField;
private long succStatusField;
Run Code Online (Sandbox Code Playgroud)
并且返回的xml是:
<companyField>700</companyField>
<soldBPField>999000353</soldBPField>
<fromDateField>01-01-2012</fromDateField>
<toDateField>01-01-2013</toDateField>
Run Code Online (Sandbox Code Playgroud)
返回的json也很相似
我更改了global.asax中的xml格式化程序,如下所示:
var xml = GlobalConfiguration.Configuration.Formatters.XmlFormatter;
xml.UseXmlSerializer = true;
Run Code Online (Sandbox Code Playgroud)
这改变了返回的XML:
<company>700</company>
<soldBP>999000353</soldBP>
<fromDateField>01-01-2012</fromDate>
<toDate>01-01-2013</toDate>
Run Code Online (Sandbox Code Playgroud)
但是返回的json仍然包含私有变量的名称
谁能帮我这个
You*_*oui 17
您的类型是否标记为[Serializable]
?Serializable意味着序列化程序应序列化所有字段 - 私有或公共字段.尝试删除Serializable
或使用此行来阻止JSON格式化程序识别属性:
config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new DefaultContractResolver();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3102 次 |
最近记录: |