XmlElementまたはXmlAttributeに相当する.NETクラスのオブジェクトプロパティに配置できる同等の属性はありますか?私は、コントローラクラスにASP.NET MVCフレームワーク 'JSON' メソッドによって使用されるJavaScriptSerializerを、持っていると思いますXmlAttribute/XmlElementはJavaScriptSerializerに相当します
<objects>
<object name="David" title="Engineer" />
<object name="William" title="Developer" />
</objects>
を:これは、次のようなXMLを返します
[XmlRoot("objects")]
public class MyObjects: List<MyObject> { }
[XmlRoot("object")]
public class MyObject {
[XmlAttribute("name")]
public string Name { get; set; }
[XmlAttribute("title")]
public string Title { get; set; }
}
そのような
public ActionResult Search() {
// code to populate data object
return Json(data);
}
戻り同じ形式の結果、:
[{"name":"David","title":"Engineer"},{"name":"William","title":"Developer"}]
は
現在、JSONメソッドを持つオブジェクトを出力し、返します。
[{"Name":"David"}, "Title":"Engineer"}, {"Name":"William", "Title":"Developer"}]
を今、私はこの例では超単純化していると私はここでやった唯一の事は、プロパティ名のが、ケーシングを変更で実現しますより高度なシナリオ私はプロパティ名を他のものに完全に再マップするかもしれません...
System.Web.Script.SerializationにはScriptIgnoreAttribute属性が含まれていますが、これはシリアライズ時にプロパティを無視するようにJavaScriptSerializerに指示するだけですしかし、実際の出力の名前や形式を変更しますか?