0
私はクラスContact
を持っています。からXamarin.Forms
に派生しました。JsonConvert.SerializeObject
を使ってサーバにデータを送信しようとしています。クラスをシリアライズする際に基底クラスレルムを除外します
しかし問題は、すべての基本クラスのプロパティRealm
もJSONに変換していることです。私はレルムクラスを第三者クラスとしてコントロールしていません。
Realm
クラス全体を私のモデルから無視するにはどうすればいいですか?
[JsonObject(MemberSerialization.OptIn)]
public class Contact : RealmObject
{
[JsonProperty]
public string birthdate { set; get; }
[JsonProperty]
public string city { set; get; }
[JsonProperty]
[PrimaryKey]
public string contactId { set; get; }
[JsonProperty]
public string country { set; get; }
}
この方法JsonProperty
属性を持つプロパティだけをシリアル化されます:あなたはオプトインすることができ、クラスにJsonObject
属性を使用して、プロパティの直列化を変更することがあり
Contact
モデル
public class Contact : RealmObject
{
public string birthdate { set; get; }
public string city { set; get; }
[PrimaryKey]
public string contactId { set; get; }
public string country { set; get; }
}
あなたは各フィールドにタグを付けるのではなく、Contactクラスを単純に考えることができる 'DataContract'を使用する例がありますか – Hunt
オプトインシリアル化を使用することはできません。ベースクラスにアクセスできない場合は、単一のプロパティを装飾する必要があります –
@HuntカスタムContractResolver –