Web APIコントローラクラス があり、Web APIコントローラのWSDLから生成されたプロキシクラスのメソッドを呼び出すと、 が返され、WSDLで定義された型のオブジェクトが返されます。プロキシクラス。asp web api jsonのシリアル化でプライベートプロパティが返される
が、XML/JSONを返すには、プロキシクラスのプライベートメンバーは
民間メンバーが
private string companyField;
private string soldBPField;
private string fromDateField;
private string toDateField;
private long succStatusField;
であり、XMLが返さ含まれています:
<companyField>700</companyField>
<soldBPField>999000353</soldBPField>
<fromDateField>01-01-2012</fromDateField>
<toDateField>01-01-2013</toDateField>
JSONが返されます同じように
私はglobal.asaxのxmlフォーマッタをf ollows:
var xml = GlobalConfiguration.Configuration.Formatters.XmlFormatter;
xml.UseXmlSerializer = true;
これを変更XMLはに戻っ:
<company>700</company>
<soldBP>999000353</soldBP>
<fromDateField>01-01-2012</fromDate>
<toDate>01-01-2013</toDate>
が、JSONはまだいずれかがこの
で私を助けることができるプライベート変数の名前が含まれています返さ
どのようにプライベートプロパティを持つWSDLを生成していますか?パブリックプロパティのみが通常WSDLにエクスポートされます。 –
これらのフィールドをどこかに公開するパブリックプロパティがないのは確かですか?おそらくそれは '部分的な'クラスで、もう一つの '部分的な'はそれらを公開していますか? Intellisenseはこれらの特性が存在することを示していますか? –
例えば以下のようなプライベートプロパティを公開するパブリックプロパティがあります。property companyFieldは、getterとsetterがcompany.Cを指し示すパブリックプロパティ会社を介して公開されています。intellisenseはプライベートプロパティcompanyFieldを表示しません。 –