Я хочу написать JsonConverter, он может преобразовывать определенный тип свойства, но только в зависимости от класса, в котором они определены.
Я регистрирую JsonConverter глобально через Web API:
var config = GlobalConfiguration.Configuration;
var jsonSettings = config.Formatters.JsonFormatter.SerializerSettings;
jsonSettings.Converters.Add(new SomeConverter());
Преобразователь может конвертировать, например, объекты типа MyType.
public override bool CanConvert(Type objectType)
{
return typeof(MyType).IsAssignableFrom(objectType);
}
Но теперь я хочу контролировать, нужно ли использовать конвертер или нет.
Я думал, что-то вроде этого:
[IgnoreSomeConverter]
public class ClassA
{
public MyType PropMyType {get;set;}
}
public class ClassB
{
public MyType PropMyType {get;set;}
}
Так что я хотел бы этогоSomeConverter сериализует и десериализует свойства MyType только тогда, когда свойство определено в классе, не оформленном с помощью CustomAttribute IgnoreSomeConverter.В примере я хочу использовать конвертер для ClassB, но не для ClassA.Есть идеи, чтобы получить это?