Это основано на моем предположении что, беря объект типа:
public class Fruit : IBasicFruit, IFruitDetails
{
// IBasicFruit implementation
public string name { get; set; }
public string color { get; set; }
// IFruitDetails implementation
public string scientific_name { get; set; }
public bool often_mistaken_for_vegetable { get; set; }
public float average_grams { get; set; }
public int century_domesticated { get; set; }
}
... и от него создающий объект типа:
public class BasicFruit : IBasicFruit
{
public string name { get; set; }
public string color { get; set; }
}
... известен как "проекция", или "проекция типа" (что проекция применяется не только к анонимным типам).
Теперь, скажем, я отправляю сериализированный BasicFruit
от сервера до моего клиентского приложения, где некоторая очень сложная логика фермы выполняется на тех двух строках и затем ее передают обратно серверу, где ORM не знает BasicFruit
введите, только Fruit
тип объекта. Если я создаю новое Fruit
основанный на объектах на моем BasicFruit
объект (игнорирование свойств, которые не существуют в BasicFruit
), таким образом, мой ORM может сохранить его, который является противоположностью проекции, потому что я иду от подмножества до надмножества, или это все еще считают проекцией, или это просто отображается?
Проекцию можно было считать формой отображения?