Anonymous Types Nedir ? Neden Kullanılır ?
İlk önce anonymous type nedir sorusunun cevabına gelirsek kısaca türü belli olmayan veriler diyebiliriz. Örneğin aşağıdaki verinin türü bellidir.
var liste = new GetCityListViewModel{
Name = "Bursa",
Plate = 16,
Region = "Marmara"
}
İsimsiz Tipler (Anonymous Types) IDisposable interface’ini uygulamadığı için, Disposable olamazlar.
Aşağıda da bir anonymous tipte veri örneği var.
var liste = new {
Name = "Bursa",
Plate = 16,
Region = "Marmara"
}
Bu veri yapısının elemanlarını değiştirmek istediğinizde hata döndüğünü göreceksiniz. Çünkü anonymous tipler read-only olduğundan, ona yeni bir değer atamaya çalışırsanız derleme zamanı hatası alırsınız.
Neden Kullanılır ?
- Geçici olarak veri tutmak veya linq ile işlemek için 🙂
Anonymous tipteki nesnelerin parametre olarak taşınması mümkün değildir. Ancak diğer metodun beklediği parametre türü dynamic olursa mümkün olur. Dynamic türü runtime esnasında ilgili nesnenin referansına bürünüyor.