C # Отношения между однотипными объектами без БД - PullRequest
0 голосов
/ 09 января 2019

Я получаю список из 90 продуктов через сериализацию xml, внутри каждого продукта одной из переменных являются выбросы CO2, которые могут быть 0,1 или 2. Люди могут забрать тоже 12 продуктов по одному. В зависимости от выбранного продукта и тех, которые уже есть в их списке, CO2 для каждого из них может измениться. Поэтому мне нужно установить три типа отношений между всеми 90 продуктами. Которые могут быть положительными отношениями, отрицательными или нейтральными. Если добавлен второй продукт, который имеет положительную связь с первым, то, в зависимости от его текущего уровня CO2, например, он будет изменен с 1 на 2. Третий добавленный продукт повлияет на первые два и так далее. Как настроить 90 продуктов со связями, которые могут быть изменены в будущем без БД.

Обновление ... Ниже мне нужны конкретные отношения между точками продукта для всех 90 продуктов, которые влияют друг на друга при их добавлении в список.

[DataContract(Name = "Product", Namespace = "")]
public class Product
{
    private List<ProductTypes> productTypes = new List<ProductTypes>();

    [DataMember(Name = "ProductName", IsRequired = true, Order = 1, EmitDefaultValue = false)]
    public string ProductName { get; set; }

    [DataMember(Name = "ProductTypes", IsRequired = true, Order = 2, EmitDefaultValue = false)]
    public List<ProductTypes> ProductTypes { get { return productTypes; } set { productTypes = value; } }
}

ВИДЫ

[DataContract(Name = "ProductTypes", Namespace = "")]
public class ProductTypes
{
    [DataMember(Name = "ProductNumber", IsRequired = true, Order = 2, EmitDefaultValue = false)]
    public long ProductNumber { get; set; }

    [DataMember(Name = "ProductRegion", IsRequired = true, Order = 3, EmitDefaultValue = false)]
    public string ProductRegion { get; set; }

    [DataMember(Name = "ProductType", IsRequired = true, Order = 4, EmitDefaultValue = false)]
    public string ProductType { get; set; }

    [DataMember(Name = "ProductColor", IsRequired = true, Order = 5, EmitDefaultValue = false)]
    public string ProductColor { get; set; }

    [DataMember(Name = "ProductPoints", IsRequired = true, Order = 6, EmitDefaultValue = false)]
    public int ProductPoints { get; set; }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...