JsonPropertyAttribute
Instructs the JsonSerializer to always serialize the member with the specified name.
using System;
namespace Newtonsoft.Json
{
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter, AllowMultiple = false)]
public sealed class JsonPropertyAttribute : Attribute
{
internal NullValueHandling? _nullValueHandling;
internal DefaultValueHandling? _defaultValueHandling;
internal ReferenceLoopHandling? _referenceLoopHandling;
internal ObjectCreationHandling? _objectCreationHandling;
internal TypeNameHandling? _typeNameHandling;
internal bool? _isReference;
internal int? _order;
internal Required? _required;
internal bool? _itemIsReference;
internal ReferenceLoopHandling? _itemReferenceLoopHandling;
internal TypeNameHandling? _itemTypeNameHandling;
public Type ItemConverterType { get; set; }
public object[] ItemConverterParameters { get; set; }
public Type NamingStrategyType { get; set; }
public object[] NamingStrategyParameters { get; set; }
public NullValueHandling NullValueHandling {
get {
return _nullValueHandling ?? NullValueHandling.Include;
}
set {
_nullValueHandling = value;
}
}
public DefaultValueHandling DefaultValueHandling {
get {
return _defaultValueHandling ?? DefaultValueHandling.Include;
}
set {
_defaultValueHandling = value;
}
}
public ReferenceLoopHandling ReferenceLoopHandling {
get {
return _referenceLoopHandling ?? ReferenceLoopHandling.Error;
}
set {
_referenceLoopHandling = value;
}
}
public ObjectCreationHandling ObjectCreationHandling {
get {
return _objectCreationHandling ?? ObjectCreationHandling.Auto;
}
set {
_objectCreationHandling = value;
}
}
public TypeNameHandling TypeNameHandling {
get {
return _typeNameHandling ?? TypeNameHandling.None;
}
set {
_typeNameHandling = value;
}
}
public bool IsReference {
get {
return _isReference ?? false;
}
set {
_isReference = value;
}
}
public int Order {
get {
return _order ?? 0;
}
set {
_order = value;
}
}
public Required Required {
get {
return _required ?? Required.Default;
}
set {
_required = value;
}
}
public string PropertyName { get; set; }
public ReferenceLoopHandling ItemReferenceLoopHandling {
get {
return _itemReferenceLoopHandling ?? ReferenceLoopHandling.Error;
}
set {
_itemReferenceLoopHandling = value;
}
}
public TypeNameHandling ItemTypeNameHandling {
get {
return _itemTypeNameHandling ?? TypeNameHandling.None;
}
set {
_itemTypeNameHandling = value;
}
}
public bool ItemIsReference {
get {
return _itemIsReference ?? false;
}
set {
_itemIsReference = value;
}
}
public JsonPropertyAttribute()
{
}
public JsonPropertyAttribute(string propertyName)
{
PropertyName = propertyName;
}
}
}