• 22 Eylül 2020 14:05

Sait ORHAN

Öğretmek için Öğrenin- Öğrenmek için Öğretin

Aslında Aynı Olan Fakat Farklı Namespace Altında Olan Nesnelerin Dönüşümü

BySait ORHAN

Nis 1, 2015

Bazı durumlarda aslında aynı olan iki nesne farklı isim uzayları altında bulunabilmektedir. Bu durumda nesneleri birbirine dönüştürecek bir metoda ihtiyaç duyulmaktadır. Örnek bir durum:

namespace MyNamespace
{
public class Personel
{
public int I { get; set; }
public string S { get; set; }
}
}
  
namespace MyNamespace2
{
public class Personel
{
public int I { get; set; }
public string S { get; set; }
}
  
}

Bu örnekte görüldüğü gibi Personel sınıfları aslında aynı nesnedir ama farklı isim uzayı altında yer alıyor. Bu gibi durumlarda aşağıdaki gibi bir metot kullanılabilir.

public static void MyMethod<T, T1>(ref T ob1, T1 ob2)
{
foreach (PropertyInfo property in ob1.GetType().GetProperties())
{
property.SetValue(ob1, ob2.GetType().GetProperty(property.Name).GetValue(ob2));
}
}

Bu metot sonucunda ob2 nesnesinin değerleri ob1 nesnesine aktarılmış olacaktır. Burada dikkat edilmesi gereken nokta örnek Personel sınıfında olduğu gibi sınıfların aynı olmasıdır.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.