Мне интересно, смогу ли я заставить Нэнси автоматически связать запрос с подклассом типа, который я указываю в параметрах типа. Вот пример того, чего я пытаюсь достичь:
Учитывая эти классы:
public class Shape
{
public int Height { get; set; }
public int Width { get; set; }
}
public class Triangle : Shape
{
public string SomeTriangleOnlyProp { get; set; }
}
public class Square : Shape
{
public string SomeSquareOnlyProp { get; set; }
}
Тогда, учитывая это Json:
{
"Height" : 10,
"Width" : 20
}
Тогда это мой желаемый результат:
var shape = this.Bind<Shape>(); //Returns a Shape object
Учитывая это Json:
{
"Height" : 10,
"Width" : 20,
"SomeTriangleOnlyProp" : "Triangle"
}
Тогда это мой желаемый результат:
var shape = this.Bind<Shape>(); //Returns a Triangle object
Учитывая это Json:
{
"Height" : 10,
"Width" : 20,
"SomeSquareOnlyProp" : "Square"
}
Тогда это мой желаемый результат:
var shape = this.Bind<Shape>(); //Returns a Square object
Могу ли я достичь этого только с помощью пользовательского класса привязки? Я мог бы попытаться привязать к каждому типу отдельно и обработать любые ошибки, но это кажется действительно неоптимальным.