Конструктор класса Product принимает два параметра. Цена1 и Цена2 именно в этом порядке. Оба эти параметра имеют тип double. В результате конструктор будет иметь следующую подпись:
Это неоднозначно и часто является причиной ошибок, поскольку компилятор не может проверить, что правильные значения передаются в правильный параметр.
Код: Выделить всё
public sealed class Product
{
[JsonConstructor]
public Product(double price1, double price2)
{
Price1 = price1;
Price2 = price2;
}
[JsonProperty(PropertyName = "price1")]
public double Price1 { get; }
[JsonProperty(PropertyName = "price2")]
public double Price2 { get; }
}
Как изменить класс Product, чтобы избежать этой двусмысленности и чтобы компилятор мог проверить правильность вызова конструктора?
Подробнее здесь:
https://stackoverflow.com/questions/790 ... and-price2