• 13-10-2024, 00:42:05
    #1
    C# Windows form ile uygulama geliştireceğim aklıma takılan bir kaç soru var. Projeyi birden fazla PC ye kurabilir ve hepsi aynı veritabanı ile çalışacak.

    1. İnternet bağlantısı olmadığı zaman sunucudaki veritabanı ile iletişim kuramayacak ve proje işlevselliğini yitirecek bundan dolayı internet olmadığı zaman verileri nerede nasıl tutabilirim ve internet bağlantısı geldiği zaman sunucudaki veritabanını nasıl güncelleyebilirim.

    2. Asenkron mu senkron mu daha iyi olur.

    Not : Senkron da işlem uzun sürmesi durumunda takılma donma vs yapabilir diye asenkron düşünüyorum ama asenkron bir problem yaratır mı Windows form da bilmiyorum
  • Kabul Edilen Cevap
    • Merhaba,

      Programınız, öncelikle internet bağlantı durumunu kontrol etmeli. İnternetin olmadığı durumlarda ise bu adımları takip edebilirsiniz;
      • Local bir veritabanı oluşturun, internet bağlantınız yokken kayıtlarınız bu veritabanına kaydedilir. İnternet bağlantınız geldiği zaman ise asıl veritabanına senkronize ederek kayıtları aktarabilirsiniz.
      • Verilerinizi geçici yerel bir dosyada saklayabilirsiniz. İnternet bağlantınız yokken veritabanı kayıt işlemlerini içeren JSON komutları bu dosyalarda sıralanır. Internet bağlantısı geldiğinde bu dosyayı okuyup sunucudaki veritabanına güncelleyebilirsiniz.
      Bu 2 yöntemden birini tercih edebilirsiniz.
      Alıntı
      2. Asenkron mu senkron mu daha iyi olur.
      async ve await anahtar kelimelerini kullanarak, veritabanı işlemlerini asenkron bir şekilde gerçekleştirmenizi tavsiye ederiz. Bu sayede programınız, veritabanı işlemi sürerken kullanıcı etkileşimlerini alabilir.
      Senkron işlemlerde ise veritabanı ile iletişim kurarken programınızın diğer işlemlerini engelleyebilir. Eğer işlemler uzun sürüyorsa, senkron olması durumunda donmalara sebebiyet verebilir.

      İyi çalışmalar.
  • 13-10-2024, 01:07:55
    #2
    Bu cevap, konu sahibi tarafından kabul edilebilir bir cevap olarak işaretlendi.
    Fast & Quality Proxies
    Merhaba,

    Programınız, öncelikle internet bağlantı durumunu kontrol etmeli. İnternetin olmadığı durumlarda ise bu adımları takip edebilirsiniz;
    • Local bir veritabanı oluşturun, internet bağlantınız yokken kayıtlarınız bu veritabanına kaydedilir. İnternet bağlantınız geldiği zaman ise asıl veritabanına senkronize ederek kayıtları aktarabilirsiniz.
    • Verilerinizi geçici yerel bir dosyada saklayabilirsiniz. İnternet bağlantınız yokken veritabanı kayıt işlemlerini içeren JSON komutları bu dosyalarda sıralanır. Internet bağlantısı geldiğinde bu dosyayı okuyup sunucudaki veritabanına güncelleyebilirsiniz.
    Bu 2 yöntemden birini tercih edebilirsiniz.
    Alıntı
    2. Asenkron mu senkron mu daha iyi olur.
    async ve await anahtar kelimelerini kullanarak, veritabanı işlemlerini asenkron bir şekilde gerçekleştirmenizi tavsiye ederiz. Bu sayede programınız, veritabanı işlemi sürerken kullanıcı etkileşimlerini alabilir.
    Senkron işlemlerde ise veritabanı ile iletişim kurarken programınızın diğer işlemlerini engelleyebilir. Eğer işlemler uzun sürüyorsa, senkron olması durumunda donmalara sebebiyet verebilir.

    İyi çalışmalar.
  • 13-10-2024, 22:58:32
    #3
    Task larla çalış.
  • 14-10-2024, 00:12:55
    #4
    Cevaplarının için teşekkür ederim
  • 14-10-2024, 00:23:40
    #5
    Fast & Quality Proxies
    Mesutuzzn adlı üyeden alıntı: mesajı görüntüle
    • Local bir veritabanı oluşturun, internet bağlantınız yokken kayıtlarınız bu veritabanına kaydedilir. İnternet bağlantınız geldiği zaman ise asıl veritabanına senkronize ederek kayıtları aktarabilirsiniz.
    • Verilerinizi geçici yerel bir dosyada saklayabilirsiniz. İnternet bağlantınız yokken veritabanı kayıt işlemlerini içeren JSON komutları bu dosyalarda sıralanır. Internet bağlantısı geldiğinde bu dosyayı okuyup sunucudaki veritabanına güncelleyebilirsiniz.
    Hocam yorumunuz için teşekkür ederim

    Local veritabanı için kullanıcının bilgisayarında sql vs olması lazım sanırım işlemleri direk program içinden halletmek daha mantıklı bunun içinde json olanı daha bir kullanışlı geliyor kullanıcı PC de çok ekstra veritabanı açmadan program içinden direk işlemleri halledebilirim böylelikle kullanıcı tarafınca sadece programı kurma ile isimde çözmüş olurum.
    Bu json olayını araştıracağım acaba örnek varmı elinizde
    Merhaba,

    Örnek olarak veritabanına kayıt edilecek verileri, internet bağlantısının olmadığı durumlarda program içerisinde veya geçici dosyalar üzerinde tutabilirsiniz. Bu veriler, internet bağlantısı sağlandığında, API aracılığıyla güvenli bir şekilde merkezi veritabanınıza iletilebilir ve kayıt altına alınabilir.

    Çalışmalarınızda başarılar dileriz.