none
String url'yi Json'a dönüştürme RRS feed

  • Soru

  • Merhaba elimde http://orneksite.ornek.com/ornek.asmx%2FuyeEkle%3FkullaniciId%3D6d651305-83b3-4d78-8375-d58778156fbe%26kullaniciAdi%3Dasd%26kullaniciSoyadi%3Dqwe%26kullaniciMail%3Dasd%26kullaniciTelefonNumarasi%3D545646%26kullaniciSehir%3DADANA%26kullaniciIlce%3DALADA%C4%9E%26kullaniciSemt%3DALADA%C4%9E%26kullaniciSifre%3D12

    encode edilmiş url var bunu 

    string decoded= HttpUtility.UrlDecode(url);

    böyle decode ediyorum ve

    http://orneksite.ornek.com/ornek.asmx/uyeEkle?kullaniciId=6d651305-83b3-4d78-8375-d58778156fbe&kullaniciAdi=asd&kullaniciSoyadi=qwe&kullaniciMail=asd&kullaniciTelefonNumarasi=545646&kullaniciSehir=ADANA&kullaniciIlce=ALADAĞ&kullaniciSemt=ALADAĞ&kullaniciSifre=12

    bu hale geliyor.

    şimdi benim yapmak istediğim şey mesela kullaniciAdi bölümünden veriyi çekmek bunu json ile yapabileceğimi düşündüm bu nasıl olur başka bir yolu varsa da olur yardımcı olabilir misiniz ?

    28 Haziran 2019 Cuma 19:13

Yanıtlar

  • Konu ile JSON'ı pek bağdaştıramadım. En az kodla şu şekilde halledersin:

    var url = "http://orneksite.ornek.com/ornek.asmx/uyeEkle?kullaniciId=6d651305-83b3-4d78-8375-d58778156fbe&kullaniciAdi=asd&kullaniciSoyadi=qwe&kullaniciMail=asd&kullaniciTelefonNumarasi=545646&kullaniciSehir=ADANA&kullaniciIlce=ALADAĞ&kullaniciSemt=ALADAĞ&kullaniciSifre=12";
    var sozluk = System.Web.HttpUtility.ParseQueryString( new Uri(url).Query);
    Console.WriteLine(sozluk["kullaniciAdi"]);

    Referansı almak istemezsen

    var url = "http://orneksite.ornek.com/ornek.asmx/uyeEkle?kullaniciId=6d651305-83b3-4d78-8375-d58778156fbe&kullaniciAdi=asd&kullaniciSoyadi=qwe&kullaniciMail=asd&kullaniciTelefonNumarasi=545646&kullaniciSehir=ADANA&kullaniciIlce=ALADAĞ&kullaniciSemt=ALADAĞ&kullaniciSifre=12";
    var query = new Uri(url).Query.TrimStart('?');
    var ad = query.Split('&')
    			  .Select(p => p.Split('='))
    			  .Where(p => p[0] == "kullaniciAdi")
    			  .First()[1];
    
    Console.WriteLine(ad);


    www.cihanyakar.com


    28 Haziran 2019 Cuma 20:17

Tüm Yanıtlar

  • Konu ile JSON'ı pek bağdaştıramadım. En az kodla şu şekilde halledersin:

    var url = "http://orneksite.ornek.com/ornek.asmx/uyeEkle?kullaniciId=6d651305-83b3-4d78-8375-d58778156fbe&kullaniciAdi=asd&kullaniciSoyadi=qwe&kullaniciMail=asd&kullaniciTelefonNumarasi=545646&kullaniciSehir=ADANA&kullaniciIlce=ALADAĞ&kullaniciSemt=ALADAĞ&kullaniciSifre=12";
    var sozluk = System.Web.HttpUtility.ParseQueryString( new Uri(url).Query);
    Console.WriteLine(sozluk["kullaniciAdi"]);

    Referansı almak istemezsen

    var url = "http://orneksite.ornek.com/ornek.asmx/uyeEkle?kullaniciId=6d651305-83b3-4d78-8375-d58778156fbe&kullaniciAdi=asd&kullaniciSoyadi=qwe&kullaniciMail=asd&kullaniciTelefonNumarasi=545646&kullaniciSehir=ADANA&kullaniciIlce=ALADAĞ&kullaniciSemt=ALADAĞ&kullaniciSifre=12";
    var query = new Uri(url).Query.TrimStart('?');
    var ad = query.Split('&')
    			  .Select(p => p.Split('='))
    			  .Where(p => p[0] == "kullaniciAdi")
    			  .First()[1];
    
    Console.WriteLine(ad);


    www.cihanyakar.com


    28 Haziran 2019 Cuma 20:17
  • Konu ile JSON'ı pek bağdaştıramadım. En az kodla şu şekilde halledersin:

    var url = "http://orneksite.ornek.com/ornek.asmx/uyeEkle?kullaniciId=6d651305-83b3-4d78-8375-d58778156fbe&kullaniciAdi=asd&kullaniciSoyadi=qwe&kullaniciMail=asd&kullaniciTelefonNumarasi=545646&kullaniciSehir=ADANA&kullaniciIlce=ALADAĞ&kullaniciSemt=ALADAĞ&kullaniciSifre=12";
    var sozluk = System.Web.HttpUtility.ParseQueryString( new Uri(url).Query);
    Console.WriteLine(sozluk["kullaniciAdi"]);

    Referansı almak istemezsen

    var url = "http://orneksite.ornek.com/ornek.asmx/uyeEkle?kullaniciId=6d651305-83b3-4d78-8375-d58778156fbe&kullaniciAdi=asd&kullaniciSoyadi=qwe&kullaniciMail=asd&kullaniciTelefonNumarasi=545646&kullaniciSehir=ADANA&kullaniciIlce=ALADAĞ&kullaniciSemt=ALADAĞ&kullaniciSifre=12";
    var query = new Uri(url).Query.TrimStart('?');
    var ad = query.Split('&')
    			  .Select(p => p.Split('='))
    			  .Where(p => p[0] == "kullaniciAdi")
    			  .First()[1];
    
    Console.WriteLine(ad);


    www.cihanyakar.com


    Bu saygıdeğer Cihan hocamızınn kodlarını anlamak için bir fırın daha c# yememiz gerekiyor. Hakikaten cok güzel ama benim beynim almıyor. Yaş geçti.

    mehmet bastem

    29 Haziran 2019 Cumartesi 08:57
  • Küme işlemleri.

    Şöyle bir yöntem izleyebilirsiniz;

    Yol tarif ederken hengi dille tarif edeceğinizden çok, doğru yolu bilip bilmemeniz önemlidir. Eğer doğru yolu biliyorsanız tarifi ister İngilizce ister Almanca vs yapabilirsiniz. Yazılıma da bu bakış açısı ile bakmalısınız

    Yukarıdaki örnekte Cihan önce

    • Url'yi alırım, & işaretinden bölerim,
    • 2. parçayı da = işaretinden bölerim bir küme elde ederim,
    • bu kümede ilk parçası kullanıcıAdı olanlarının ilkinin ikinci parçası hedeflediğim yazıdır

    diye kafasında yolu belirlemiş.

    Daha sonra bunları yapmak için gerekli Linq methodlarını yazmış.

    Ben olsam ;

    var kullaniciAdı = new Uri("http://orneksite.ornek.com/ornek.asmx/uyeEkle?kullaniciId=6d651305-83b3-4d78-8375-d58778156fbe&kullaniciAdi=asd&kullaniciSoyadi=qwe&kullaniciMail=asd&kullaniciTelefonNumarasi=545646&kullaniciSehir=ADANA&kullaniciIlce=ALADAĞ&kullaniciSemt=ALADAĞ&kullaniciSifre=12")
        .ParseQueryString()
        .GetValues("kullaniciAdi")[0];
    şeklinde düşünürdüm.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com


    29 Haziran 2019 Cumartesi 09:42
    Moderatör
  • Çok özendim ya :) bende yapıcam

    var url = "http://orneksite.ornek.com/ornek.asmx/uyeEkle?kullaniciId=6d651305-83b3-4d78-8375-d58778156fbe&kullaniciAdi=asd&kullaniciSoyadi=qwe&kullaniciMail=asd&kullaniciTelefonNumarasi=545646&kullaniciSehir=ADANA&kullaniciIlce=ALADAĞ&kullaniciSemt=ALADAĞ&kullaniciSifre=12";
    
    var sonuc = HttpUtility.ParseQueryString(url)["kullaniciAdi"];

    29 Haziran 2019 Cumartesi 10:06
  • @Önay abi zaten ilk verdiğim kodda buna benzer :) Ama desktop a web/http referansı almak istemezse diye bu yolu önerdim. Her iki kodda desktop da kullanmak için referans istiyor.

    www.cihanyakar.com



    30 Haziran 2019 Pazar 10:02
  • Merhaba bu gönderdiğiniz kodla işimi hallettim sayılır ama şöyle bir problemim var çözemedim bir türlü

    şimdi Türkçe karakterden dolayı url çalışmıyordu bende android projemde encode ettim serviste decode ettim verdiğiniz yöntemle verileri alabildim ancak, servis arayüzünden direk bu urlyi verdiğimde sonuç dönüyor ama bu url'e androidden istek yaptığım sanırım güvenlikten dolayı takılıyor. Çünkü aynı linki adres çubuğuna yapıştırıyorum ve

    System.InvalidOperationException: GetPastane?il=edirne&ilce=merkez&semt=merkezköyler Web Service method name is not valid.
       at System.Web.Services.Protocols.HttpServerProtocol.Initialize()
       at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean& abortProcessing)

    böyle bir hatayla karşılaşıyorum.

    1 Temmuz 2019 Pazartesi 14:37
  • GetPastane nin Route'u nasıl? Hata orada.

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    2 Temmuz 2019 Salı 08:29
    Moderatör
  • http://pastaSepetiWebServis.somee.com/pastasepeti.asmx%2FGetPastane%3Fil%3DED%C4%B0RNE%26ilce%3DMERKEZ%26semt%3DMERKEZK%C3%96YLER

    yapılan istek bu

    manuel olarak girdiğimde dönen sonuç

    adres çubuğuna yapıştırınca gelen sonuç

    android üstünden istek yaptığımda dönen hata



    2 Temmuz 2019 Salı 13:12