• 21 Kasım 2024 22:14

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 yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.