Лучший способ создать экземпляр дочернего объекта из родительского объекта
m создание дочернего объекта из родительского объекта. Таким образом, сценарий состоит в том, что у меня есть объект и дочерний объект, который добавляет свойство расстояния для сценариев, в которых я хочу искать. Я'Мы выбрали наследование, поскольку мой пользовательский интерфейс работает аналогично поисковому объекту или списку объектов, не являющихся результатом поиска местоположения. Так что в этом случае наследование кажется разумным выбором.
В настоящее время мне нужно создать новый объектMyObjectSearch
из экземпляраMyObject
, В настоящее время яЯ делаю это в конструкторе вручную, устанавливая свойства по одному. Я мог бы использовать отражение, но это было бы медленно. Есть ли лучший способ добиться такого улучшения объекта?
Надеюсь, мой код ниже иллюстрирует сценарий.
public class MyObject {
// Some properties and a location.
}
public class MyObjectSearch : MyObject {
public double Distance { get; set; }
public MyObjectSearch(MyObject obj) {
base.Prop1 = obj.Prop1;
base.Prop2 = obj.Prop2;
}
}
И моя функция поиска:}
public List DoSearch(Location loc) {
var myObjectSearchList = new List();
foreach (var object in myObjectList) {
var distance = getDistance();
var myObjectSearch = new MyObjectSearch(object);
myObjectSearch.Distance = distance;
myObjectSearchList.add(myObjectSearch);
}
return myObjectSearchList;