C#, Asp.Net, .Net Core
C# Newtonsoft Json "Cannot Deserialize The Current Json Array...)
C# Newtonsoft Json "Cannot Deserialize The Current Json Array...)
-
https://dotnetfiddle.net/WUdr6e
buradaki çözümleri denedim ama olmadı;
-
anladığım kadarıyla list<T> şeklinde kullanamazsın sadece primitive tiplere izin veriyorum diyor. sana lazım olan en dipteki jsonu alıp onu class üzerinden convert etmeyi dene. istersen önce dynamic tipine çevir bir kontrol et hangi alanı ne olarak convert etmiş daha kolay olur.
-
-
saybirs bunu yazdı
{..},
{..}
şeklinde döndürdüğünden listeye atmak gerekir diye düşündüm ama tekil olarak düşünmek lazımmış.
ama
string entityAlias= okunanJson.entityCacheModelList.First(x => x.entityAlias);
şeklinde almaya çalışınca "cannot implicitly convert type 'string' to 'bool' " hatası alıyorum. Liste içerisinden bu şekilde ilgili ilk elemanı döndürmesi gerekmiyor mudu bana?
edit:
sorun halloldu kıymetli yorumlarınız için teşekkür ediyorum.
string entityAlias = okunanJson.entityCacheModelList[0].entityAlias ; ile istediğim veri dönüyor.
in linq hali
@saybirs
saygılar, teşekkürler
Https tarafından 14/Eki/20 15:47 tarihinde düzenlenmiştir -
Https bunu yazdısaybirs bunu yazdı
{..},
{..}
şeklinde döndürdüğünden listeye atmak gerekir diye düşündüm ama tekil olarak düşünmek lazımmış.
ama
string entityAlias= okunanJson.entityCacheModelList.First(x => x.entityAlias);
şeklinde almaya çalışınca "cannot implicitly convert type 'string' to 'bool' " hatası alıyorum. Liste içerisinden bu şekilde ilgili ilk elemanı döndürmesi gerekmiyor mudu bana?
hocam yazdigin expression'in sonucu bool olmasi lazim. yani x.entityAlias string türünde.. söyle yapmalisin x.entityAlias.Equasl("bla bla");
yok belli bir alan secmek istiyorsan .First yerine Select yapman lazim. Ne yapmak istedigini tam anlayamadim gerci :) First yerine, döngüyle sonucu gezebilirsin..
-
ParselEntity okunanJson = JsonConvert.DeserializeObject<ParselEntity>(sampleJson);
Console.WriteLine(okunanJson.entityCacheModelList.FirstOrDefault().entityAlias);şeklinde first değeri alabilirsin.