Şimdi Ara

C# Generic class T nullable nasıl yapılıyor ?

Bu Konudaki Kullanıcılar:
1 Misafir - 1 Masaüstü
5 sn
8
Cevap
0
Favori
1.153
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • NOT : Resimler konuda gözükmüyor anlamadım üstüne tıklayın kutuların açılıyor.

    Merhaba web api ve vue kullanarak kendimi geliştirme,deneme maksatlı bir site yapıyorum olabildiğince araştırarak doğru şekilde ilerlemeye çalışıyorum.

    Bir sorunum var daha doğrusu sorun değil gayet güzel çalışıyor ama genede daha düzgününü yazmak hedefim.

    C# Generic class T nullable nasıl yapılıyor ?


    Yukarıdaki resimdeki gibi bir classım var ben apide geri dönüş yaparken bu classı kullanıyorum şu makaleden gördüm uyguladım kendime göre ayarladım
    http://www.borakasmer.com/net-core-ef-core-ve-dependency-injection-ile-uctan-uca-service-ve-business-katmani/

    Şimdi benim yapmak istediğim şey şu apide her zaman geriye ben veri dönmüyorum yani o datayı doldurmama gerek yok sadece message,issucess ve errorsu doldurup dönüyorum bazen

    Örnek :
    C# Generic class T nullable nasıl yapılıyor ?


    Yukardaki resimde ben login register ve confirm email aksiyonlarında sadece hata varsa hata ve issuccess dönüyorum yani geriye bir data dönmüyorum yani o classları vermeme gerek yok ama boş geçmeme izin vermediğinden doldurdum böylede çalışıyor.
    https://docs.microsoft.com/tr-tr/dotnet/csharp/programming-guide/generics/constraints-on-type-parameters

    Şu makaledeki olayı denedim yani ServiceResponse <T> where T : class? bu şekil yaptım ama genede boş geçmeme izin vermedi bunu ben nasıl boş geçilebilir yapabilirim Nullable <T> felan ne biliyorsam denedim olmadı T den sonra ? işareti koydum olmadı.



    < Bu mesaj bu kişi tarafından değiştirildi ORGANIKHOSAF -- 23 Ağustos 2020; 14:11:50 >



  • public Nullable<int> Somethings { get; set; }


    Bu işe yaramıyor mu?
  • kangroo kullanıcısına yanıt
    Denedim yaramadi.Tesekkurler.

    < Bu ileti DH mobil uygulamasından atıldı >
  • referans tipler zaten nullabledir. default value de null zaten. ServiceResponse<object> response = new ServiceResponse<object>() dediginde data nullable olur.

    class? diye bir yazim yok diye biliyorum.
  • mahoni_38 kullanıcısına yanıt
    Sağol abi o class? yazımını konuda paylaştığım microsoftun sitesinde görmüştüm aşağıya da o kısmı yapıştırdım

    where T : class? Tür bağımsız değişkeni, null yapılabilir veya null yapılamayan bir başvuru türü olmalıdır. Bu kısıtlama, her sınıf, arabirim, temsilci veya dizi türü için de
    geçerlidir yazıyor


    Şimdi ben bu response daki datanın boş olmasını istersem illa object mi yazmam lazım direk boş geçerek oraya bir şey yazmadan olmuyor sanırım ben onu istiyordum.Aşağıda kodumun şuan nasıl olduğununa dair resim paylaştım kutuya tıklayınca açılıyor forumda gösteremiyorum anlamadım.

    Kodum bu böyle dönüş yapıyorum
    C# Generic class T nullable nasıl yapılıyor ?
    mesela registerviewmodel vermeme gerek yok message error dönüyorum. Ozaman ben eğer boş geçmek istersem datayı,return new ServiceResponse<object> şeklinde yazıcam null olmuş olacak return new ServiceResponse<> böyle bırakılmıyor anladım.

    Teşekkür ederim.



    < Bu mesaj bu kişi tarafından değiştirildi ORGANIKHOSAF -- 24 Ağustos 2020; 11:33:22 >
  • quote:

    Orijinalden alıntı: ORGANIKHOSAF

    Sağol abi o class? yazımını konuda paylaştığım microsoftun sitesinde görmüştüm aşağıya da o kısmı yapıştırdım

    where T : class? Tür bağımsız değişkeni, null yapılabilir veya null yapılamayan bir başvuru türü olmalıdır. Bu kısıtlama, her sınıf, arabirim, temsilci veya dizi türü için de
    geçerlidir yazıyor


    Şimdi ben bu response daki datanın boş olmasını istersem illa object mi yazmam lazım direk boş geçerek oraya bir şey yazmadan olmuyor sanırım ben onu istiyordum.Aşağıda kodumun şuan nasıl olduğununa dair resim paylaştım kutuya tıklayınca açılıyor forumda gösteremiyorum anlamadım.

    Kodum bu böyle dönüş yapıyorum
    mesela registerviewmodel vermeme gerek yok message error dönüyorum. Ozaman ben eğer boş geçmek istersem datayı,return new ServiceResponse<object> şeklinde yazıcam null olmuş olacak return new ServiceResponse<> böyle bırakılmıyor anladım.

    Teşekkür ederim.
    c# 8 ile idi galiba. value typelar ve classlar expilict olarak nullable veya not null oluyor olabilir boyle birseyler gozume carpti. Swift de bir degisken
    weak veya strong tanimlayarak nullable ve not null verilebiliyor. Bu ozellik c# geldiyse bilmiyorum.

    Bir nesneyi GenericClass olarak natimladiysan List<T> gibi . illa o T vermen lazim. kullan kullanma. Onu kullanmadigin bir hali varsa ayri bir obje tasarlar. MyGenericClass<T> da T yerine Object vermek zorunda deglsin ama bir sey vermen lazim.
  • mahoni_38 kullanıcısına yanıt
    Tamamdır abi teşekkürler 2 ayrı class yapmak istememiştim şimdilik geriye data dönmediğim zaman object verip geçiyorum. Data dönceğim zaman model veya entity veriyorum böyle ayarladım.Sağol tekrardan
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.