lostyazilim
tr.link

Veritabanı MSSQL olan C# ile yazılmış uygulamanın kurulum dosyası?

4 Mesajlar 894 Okunma
lstbozum
tr.link

HelloWorld01 HelloWorld01 WM Aracı Kullanıcı
  • Üyelik 19.02.2017
  • Yaş/Cinsiyet 28 / E
  • Meslek Webmaster
  • Konum İzmir
  • Ad Soyad S** G**
  • Mesajlar 532
  • Beğeniler 159 / 159
  • Ticaret 1, (%100)
Herkese merhaba, şimdi veritabanı MSSQL olan C# ile yazılmış bir uygulamamız var. Bu uygulamayı profesyonel olarak veritabanı ile birlikte nasıl setup dosyasına çeviririz?

Birkaç yerde okudum ama adamlar bu işi yapmak için her kullanıcının bilgisayarına SQL server kurup öyle çalıştırıyor setupu. Ama biz sonuçta veritabanı güvenliği için kimsenin buraya erişmesini istemiyor ve kullanıcının rahatlıkla bu programı kurup çalıştırıp kullanmasını istiyoruz.

Bilen arkadaşlarımız varsa yardımlarını bekliyoruz. İyi çalışmalar.
 

 

wmaraci
reklam

Blacksheep Blacksheep .NET Developer Kullanıcı
  • Üyelik 20.07.2014
  • Yaş/Cinsiyet 28 / E
  • Meslek Webmaster
  • Konum Ankara
  • Ad Soyad M** K**
  • Mesajlar 2074
  • Beğeniler 60 / 532
  • Ticaret 10, (%100)
Kullanıcı bilgisayarına sadece SQL Server hizmetini kurdurabilirsiniz yani Managenet Studio olmadan bu şekilde standart kullanıcılar veritabanı içeriğinizi görüntüleyemezler.Eğer veritabanı güvenliği ön planda ise veritabanı sunucunuzu internet üzerinde barındırmanızı tavsiye ederim.
 

 

Fizello - Inspired by Colors

Decimas Decimas WM Aracı Kullanıcı
  • Üyelik 19.04.2015
  • Yaş/Cinsiyet 26 / E
  • Meslek Developer
  • Konum İstanbul Avrupa
  • Ad Soyad E** E**
  • Mesajlar 820
  • Beğeniler 1 / 302
  • Ticaret 1, (%100)
Aynı sorundan bende muzdaribim, doğrusu kurulum için bir ilerleme kat ettim ama denemeye fırsatım olmadı. Aslına bakarsanız bu işlem için ayrı bir setup projesi yapılması gerekiyor, şuan setup yapan programları araştırıyorum, böyle bir destek sunmuyorlarsa kendi setup programımı kendim yapacağım çünkü bir arkadaşa kurulum dosyasını yolladım kurulum bitti iyi güzel, program çalıştığında setup'dan çıkarttığım mssql express 2012 ürününü sessiz modda kurduruyorum ama bu kurulum ne kadar sürer (normal sql server 2012'nin kurulumu 1 saate yakın sürmüştü), kullanıcı kapatırsa makineyi kurulum uçar, haliyle eksik veya hatalı kurulum olabilir. Eğer kullanıcının cihazıyla ilgili bir sebepten ötürü kurulum hatalı olursa yine ayrı bir dert.

Microsoft bunun için ayriyetten bir destek sunmalıydı bence, resmi setup project'in özelliklerinde framework gereksinimlerinin hemen altında sql server'de olsun, yoksa indirsin kursun tarzında bir bir satır var, denettim ama bir şey gelip gitmemiş. Bu noktada çıkmaza mı girdim yoksa yokuşa mı denk geldim bilemedim, sqllite kullanmak gibi bir seçenek var ama sql server kadar yönetilebilir olacağını düşünmüyorum, özellikle dev veri kümeleri için.

Bu aşamada bilgi paylaşımı yapıp hatta bu konuda detaylı bir pdf kitapçık hazırlasak çok iyi olacak, çünkü 2 haftadır bununla uğraıyorum ve başkaları da uğraşmaya devam edecek.
 

 

no time for caution

SizofrenikDev SizofrenikDev WM Aracı Kullanıcı
  • Üyelik 05.10.2016
  • Yaş/Cinsiyet 38 / E
  • Meslek Yazılım Uzmanı
  • Konum İstanbul Avrupa
  • Ad Soyad H** B**
  • Mesajlar 187
  • Beğeniler 8 / 49
  • Ticaret 2, (%100)
Arkadaşlar merhaba,
Elbette her kullanıcının bilgisayarına SQL kurmamak gerekir. Express olsa bile. Multi Client olan sistemlerde SQL sunucu tarafında barındırılması gerekmektedir. Sizin kurmuş olduğunuz client programlar bu sunucuya erişim sağlaması gereklidir. Client sayısı 1 in üzerinde olduğu tüm durumlarda yukarıdaki mevzu geçerlidir.

Örnek olarak,
DB sunucunuzun IP Adresi : 10.10.10.10 olsun. bu IP adresinin dış bacak IP adresi olduğunu kabul edelim. ve standart SQL portu haricinde farklı bir port set edildiğini düşünelim. 56987 port olsun.

Sizin ConnectionString içerisinde server=10.10.10.10:56987;database=TEST;uid=dbUser;pass=123123123 olsun. Her ne olursa olsun bu kısmı sertifika ortamında şifrelemenizi öneririm. ne olur ne olmaz.

ConnectionString yapınız yukarıdaki şekilde olması durumunda her client sizin veritabanınıza bağlanarak tek DB üzerinden programınızı kullanacaktır.

Bu noktada dikkat etmeniz gereken bir durum mevcut. DB sunucu IP yada user-pass bilgileri değiştiğinde programınız patlayacaktır. Bunun önüne geçebilmek için çeşitli algoritmalar geliştirebilirsiniz.

Yine örnek olarak,
Uygulama her açılışında, update sunucunuzu kontrol eder yeni bir güncelleme var ise download edip mevzut yazılım içerisine enjekte eder. Update sunucunuz her zaman domain bazlı olması gerekir, IP değişse bile domain değişmeyeceğinden UPDATE her zaman çalışır.

Umarım anlatabilmişimdir.
 

 

wmaraci
wmaraci
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al