Quelqu'un at-il rencontré un scénario dans lequel vous deviez fusionner un objet avec un autre objet de même type, fusionnant le graphe d'objet complet. par exemple. Si j'ai un objet personne et un objet personne a le prénom et l'autre le nom de famille, un moyen de fusionner les deux objets en un seul objet.Fusionner un graphique d'objet .net
public class Person
{
public Int32 Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
public class MyClass
{
//both instances refer to the same person, probably coming from different sources
Person obj1 = new Person(); obj1.Id=1; obj1.FirstName = "Tiju";
Person obj2 = new Person(); ojb2.Id=1; obj2.LastName = "John";
//some way of merging both the object
obj1.MergeObject(obj2); //??
//obj1.Id // = 1
//obj1.FirstName // = "Tiju"
//obj1.LastName // = "John"
}
J'ai rencontré un tel type d'exigence et j'ai écrit une méthode d'extension pour faire de même. Toutefois, cela fonctionne lorsque la propriété source est null, si la cible l'a, elle le copie dans la source. Il peut encore être amélioré pour fusionner lorsque des incohérences sont présentes, par ex. si FirstName = "Tiju" et FirstName = "John"
Tout commments apprécié.
Merci TJ
Je ne comprends pas votre question. Voulez-vous des commentaires sur la façon dont votre code peut être amélioré? Ou y a-t-il un problème avec le code? –
Ma question est, est-ce que quelqu'un d'autre fait face à de telles exigences, quelles idées ils ont trouvées. –