有沒有辦法忽略使用Json.NET序列化器但不使用JsonIgnore
屬性的只能獲取屬性?有沒有辦法在不使用JsonIgnore屬性的情況下忽略Json.NET中的只讀屬性?
例如,我有這些類獲得的屬性:
public Keys Hotkey { get; set; }
public Keys KeyCode
{
get
{
return Hotkey & Keys.KeyCode;
}
}
public Keys ModifiersKeys
{
get
{
return Hotkey & Keys.Modifiers;
}
}
public bool Control
{
get
{
return (Hotkey & Keys.Control) == Keys.Control;
}
}
public bool Shift
{
get
{
return (Hotkey & Keys.Shift) == Keys.Shift;
}
}
public bool Alt
{
get
{
return (Hotkey & Keys.Alt) == Keys.Alt;
}
}
public Modifiers ModifiersEnum
{
get
{
Modifiers modifiers = Modifiers.None;
if (Alt) modifiers |= Modifiers.Alt;
if (Control) modifiers |= Modifiers.Control;
if (Shift) modifiers |= Modifiers.Shift;
return modifiers;
}
}
public bool IsOnlyModifiers
{
get
{
return KeyCode == Keys.ControlKey || KeyCode == Keys.ShiftKey || KeyCode == Keys.Menu;
}
}
public bool IsValidKey
{
get
{
return KeyCode != Keys.None && !IsOnlyModifiers;
}
}
我是否需要添加[JsonIgnore]
到所有的人(我也有許多其他類),或者有更好的辦法忽略所有隻獲取屬性?
如何忽略沒有SET的屬性?並且仍然序列化時像public string Name {get;私人設置; }? –