none
.net Web APi Route kısmına tarih gönderip veri çekme RRS feed

  • Soru

  • Merhaba Arkadaşlar;

    Bir tane web servis yazıyorum,yapacağı iş şu: Uygulamadan bir tarih girilecek bu tarihten itibaren son bir aylık kaydını çekeceğim. Yani atıyorum 2019-08-08 girildi bana 2019-07-08 ile 2019-08-08 arasındaki verileri listeleyecek. Bunun hakkında internette doğru dürüst bir çalışma bulamadım bulduklarımıda anlayamadım. Bu konuda yardımcı olabilirmisiniz?

    30 Eylül 2019 Pazartesi 11:45

Tüm Yanıtlar

  • Bu bahsettiğiniz işte ekstra bişey yok ki, en temel web servis işlemi. İnternetteki web servis hakkındak tüm hello world örnekleri size yetmesi lazım.

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

    • Yanıt Olarak İşaretleyen carleone5038 30 Eylül 2019 Pazartesi 12:13
    • Yanıt İşaretini Geri Alan carleone5038 30 Eylül 2019 Pazartesi 12:13
    30 Eylül 2019 Pazartesi 11:55
    Moderatör
  • Hocam demek istediğim şu: http://localhost:8090/api/controller/{date}

    burda date alanına gelen tarihe göre ben verileri listelicem. İd olsa kolay ama tarih olunca ne denediysem çalıştıramadım. Kullanıcı uygulamasından 2019-09-30 tarihini girip tıkladığında benim linkim

    http://localhost:8090/api/controller/2019-09-30 şeklinde olacak ve bu paremetreye göre son bir aylık kaydı listelicek. Belkide çok kolaydır ama benim denediğim şekillerde çalıştıramadım. 

    30 Eylül 2019 Pazartesi 12:16
  • Get olması şart mı?

    [HttpGet("{date}")]
    public Task<ActionResult<IEnumerable<Order>>> GetOrders(DateTime? date) =>
        await _context
              .Orders
              .Where(p => p.OrderDate.Date > date.Date.AddMonths(-1) && p.OrderDate.Date <= date.Date)
              .ToListAsync();
    bu şekilde olması lazım.

    Not: Order benim hayali entity'im.


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



    30 Eylül 2019 Pazartesi 12:48
    Moderatör
  • Önay hocam cevabınız çok teşekkür ederim ama projemde çalıştıramadım. 

    bana gelen istek http://localhost:8090/api/controller/yyyy-mm-dd bu şekilde olacak ve ben buradan tarihe göre çekeceğim. 

    30 Eylül 2019 Pazartesi 13:51
  • "/{yil}-{ay}-{gun}"

    Get(int yil, int ay, int gun)

    var tarih = new DateTime(yil,ay,gun)

    sırası yeterli olur düşüncesindeyim. Girdinin datetime olmasına gerek yok. Hatta string yaparak işi daha da kolay hale getirebilirsiniz.


    www.cihanyakar.com



    30 Eylül 2019 Pazartesi 13:58
    Moderatör
  • yyyy-mm-dd şeklindeki veriyi bind eder. Siz controller de başka bir hata yapıyorsunuz. 

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


    30 Eylül 2019 Pazartesi 14:02
    Moderatör