Forum

C# Winformda Server...
 
Bildirimler
Hepsini Temizle

C# Winformda Server Clien Mantığı

10 Yazılar
4 Üyeler
0 Likes
1,324 Görüntüleme
(@FatihCIKIKCI)
Gönderiler: 3
Active Member
Konu başlatıcı
 

Merhaba ÜSTADLARIM 🙂

Ben bu konularda yeni olduğum için size bir konuda danışma ihtiyacı duydum. Benım sorunum c# oluşturduğum bir WinFrom uygulamasının database kısmını Server üzerinde tutup programını client tarafında çalıştırmak ama program çalışmasında sıkıntı yaşıyorum bir türlü bağlanamıyorum. web uygulaması olsa bi connetion string ile çözülüyor fakat bunda sürekli veritabanına bağlantı sorunu yaşıyorum sebebi nedir ?nasıl yapabilirm ? yardımlarınız için şimdiden teşekkürler.

 
Gönderildi : 11/10/2015 17:57

(@birkanurlu)
Gönderiler: 327
Reputable Member
 

Merhaba ÜSTADLARIM 🙂

Ben bu konularda yeni olduğum için size bir konuda danışma ihtiyacı duydum. Benım sorunum c# oluşturduğum bir WinFrom uygulamasının database kısmını Server üzerinde tutup programını client tarafında çalıştırmak ama program çalışmasında sıkıntı yaşıyorum bir türlü bağlanamıyorum. web uygulaması olsa bi connetion string ile çözülüyor fakat bunda sürekli veritabanına bağlantı sorunu yaşıyorum sebebi nedir ?nasıl yapabilirm ? yardımlarınız için şimdiden teşekkürler.

Nasıl yani? Web uygulamasında yaptığınız gibi yine uygulamanıza connection string yazarak Database Server'a bağlanabilirsiniz. Database altyapınız, konumu ve connection string'inizi yazar mısınız bi inceleyelim.

 
Gönderildi : 12/10/2015 06:31

(@FatihCIKIKCI)
Gönderiler: 3
Active Member
Konu başlatıcı
 

SqlConnection con = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=SGN;Integrated Security=True"); olarak her formda giriyorum ama ben kullanıcıların database ı server uzerinden kullanmasını istiyorum acaba program.cs içerisine bi connstring yazarsam sorun olurmu 

 
Gönderildi : 12/10/2015 15:56

(@birkanurlu)
Gönderiler: 327
Reputable Member
 

SqlConnection con = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=SGN;Integrated Security=True"); olarak her formda giriyorum ama ben kullanıcıların database ı server uzerinden kullanmasını istiyorum acaba program.cs içerisine bi connstring yazarsam sorun olurmu 

Merhaba, son bir soru sormak istiyorum talebinizi daha iyi anlamak için. Sizin amacınız Veritabanını belirli bir yerde tutup, aynı ağdaki herkesin winform uygulamasını kullanabilmesini sağlamak. Doğru mu anlıyorum?

Bu arada bu konuyla ilgili her ne ihtimalle olursa olsun program.cs'ye herhangi bir şey yazmanız gerekmeyecek.

 
Gönderildi : 13/10/2015 11:13

(@FatihCIKIKCI)
Gönderiler: 3
Active Member
Konu başlatıcı
 

Tekrardan Merhaba

SQL cümlesini SqlConnection con = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=SGN;Integrated Security=True"); şeklinde yazdığımda sadece database olan bilgisayarda çalışıyor SqlConnection con = new SqlConnection(@"Data Source=SQLSERVER\sqlexpress;Initial Catalog=SGN;Integrated Security=True"); Yaptığımda bağlantı hatası yaşıyorum ama ping vs bütün yöntemlerde bağlantı var 

 
Gönderildi : 13/10/2015 13:51

(@eravse)
Gönderiler: 1753
Üye
 

cok cesıt baglantı hatası var ekran goruntusu atarsanız neden kaynaklansdıgı hakkında daha hızlı yorum yapabılırız 

saygılarımla 

 

ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com

 
Gönderildi : 13/10/2015 14:37

(@ilhancakmak)
Gönderiler: 71
Trusted Member
 

SqlConnection con = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=SGN;Integrated Security=True"); olarak her formda giriyorum ama ben kullanıcıların database ı server uzerinden kullanmasını istiyorum acaba program.cs içerisine bi connstring yazarsam sorun olurmu 

 

clientlerde çalışmaması normal.

.\sqlexpress dediğiniz zaman çalışan client sql serveri kendinde arar. 

Sql Server'de TCP/IP konfigürasyonunuz doğru ise zaten sunucu\sqlexpress değil direk sunucu olarak bağlanırsınız.

yani @"DataSource=sunucu;Initial Catalog=SGN gibi

 
Gönderildi : 14/10/2015 01:21

(@birkanurlu)
Gönderiler: 327
Reputable Member
 

Tekrardan Merhaba

SQL cümlesini SqlConnection con = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=SGN;Integrated Security=True"); şeklinde yazdığımda sadece database olan bilgisayarda çalışıyor SqlConnection con = new SqlConnection(@"Data Source=SQLSERVER\sqlexpress;Initial Catalog=SGN;Integrated Security=True"); Yaptığımda bağlantı hatası yaşıyorum ama ping vs bütün yöntemlerde bağlantı var 

İlhan beyin de söylediği gibi Data Source=.\sqlexpress ifadesi programın çalıştığı makinada sql server ara demek. Yani siz kendi bilgisayarınızdaki sql ile çalışmak isterseniz örneğin, bilgisayar adınızı yazabilir ya da sadece . koyabilirsiniz.

http://www.chip.com.tr/forum/sql-server-i-tcpip-uzerinden-uzaktan-acma-ayari_t254531.html

linki inceleyin lütfen, adımları tekrarlayın. Sonrasında connectionstring yazarken Data Source'a SQL server'ın kurulu olduğu Bilgisayar adını ya da IP adresini yazın. Sorunsuz bağlanabilmeniz gerekir.

Örnek vermek gerekirse; SqlConnection con = new SqlConnection(@"Server=192.168.1.10\sqlexpress ;Database=SGN;User Id=sa; Password=123456;Integrated Security=False"); gibi

 
Gönderildi : 14/10/2015 17:40

(@ilhancakmak)
Gönderiler: 71
Trusted Member
 

[new SqlConnection(@"Server=192.168.1.10\sqlexpress ;

Birkan hocam bu şekilde de çalışacağını düşünmüyorum.

sql server'in tcp/ip ayarları yapıldığında, kodunuz zaten varsayılan 1433 portundan erişmeye çalışacak isimden değil. bu nedenle ip yazmak gerekli.

client'larda cliconfg.exe aracı ile named pipes etkinleştirdiğinizde oradan yapacağınız düzenleme ile ip\sqlexpress olarak bağlanırsınız ki buna da gerek yok.

yani doğrusu new SqlConnection(@"Server=192.168.1.10; olacak.

 
Gönderildi : 15/10/2015 03:29

(@birkanurlu)
Gönderiler: 327
Reputable Member
 

[new SqlConnection(@"Server=192.168.1.10\sqlexpress ;

Birkan hocam bu şekilde de çalışacağını düşünmüyorum.

sql server'in tcp/ip ayarları yapıldığında, kodunuz zaten varsayılan 1433 portundan erişmeye çalışacak isimden değil. bu nedenle ip yazmak gerekli.

client'larda cliconfg.exe aracı ile named pipes etkinleştirdiğinizde oradan yapacağınız düzenleme ile ip\sqlexpress olarak bağlanırsınız ki buna da gerek yok.

yani doğrusu new SqlConnection(@"Server=192.168.1.10; olacak.

Hocam aynı ağ içerisinde new SqlConnection(@"Server=ServerName şeklinde de bağlanır. Dilerseniz bir deneme yapabilirsiniz.

 
Gönderildi : 15/10/2015 04:26

Paylaş: