Forum
Merhaba
Codefirst ile veritabanını projeye bağladıktan sonra (server tarafında ) clienttan servera mesaj gönderiyorum. Visual studio ile projeyi çalıştırdığım zaman kayıt işlemleri oluyor. Fakat IIS içerisine aldığım zaman server sitesini veritabanına kayıt edilmiyor.
static async Task DbSohbetEkle(string plaka, string kullaniciAdi, string mesaj) // serverdan clienta mesaj gittiği zaman hem ekranda göstermek hemde veritabanına eklemek için
{
using (ServerDataContext contxt = new ServerDataContext())
{
Sohbet _sohbet = new Sohbet();
_sohbet.AracPlaka = plaka;
_sohbet.KullaniciAdi = kullaniciAdi;
_sohbet.Mesaj = mesaj;
_sohbet.Gonderen = "Sunucu Makinası";
_sohbet.Gonderilen = "Plaka : " + plaka;
contxt.Sohbet.Add(_sohbet);
await contxt.SaveChangesAsync();
}
}
Kodlar bu şekildedir. Veritabanına IIS üzerinden nasıl kayıt edebilirim ?
Teşekkürler
Sorunu bu şekilde anlamak zor, iis e visual studio üzerinden mi yayınladınız debug edip dosyaları kopyalarak mi attınız.
Direk vs üzerinden yayınlarsanız ayarlarıda yapacaktır bir eksik varsa
Merhaba
Codefirst ile veritabanını projeye bağladıktan sonra (server tarafında ) clienttan servera mesaj gönderiyorum. Visual studio ile projeyi çalıştırdığım zaman kayıt işlemleri oluyor. Fakat IIS içerisine aldığım zaman server sitesini veritabanına kayıt edilmiyor.
static async Task DbSohbetEkle(string plaka, string kullaniciAdi, string mesaj) // serverdan clienta mesaj gittiği zaman hem ekranda göstermek hemde veritabanına eklemek için
{
using (ServerDataContext contxt = new ServerDataContext())
{
Sohbet _sohbet = new Sohbet();
_sohbet.AracPlaka = plaka;
_sohbet.KullaniciAdi = kullaniciAdi;
_sohbet.Mesaj = mesaj;
_sohbet.Gonderen = "Sunucu Makinası";
_sohbet.Gonderilen = "Plaka : " + plaka;
contxt.Sohbet.Add(_sohbet);
await contxt.SaveChangesAsync();
}
}Kodlar bu şekildedir. Veritabanına IIS üzerinden nasıl kayıt edebilirim ?
Teşekkürler
Localde Full trust calıstıgından bır sorun cıkmaz ama IIS uzerınde bır hosta atarsan ornegın natro bu kodu calıstıramazsın.
DbSohbetEkle bir kere neden Statik ? bu metod ıcınde statık kullanman demek memoryde hep aynı kaydı aynı sekılde kullanacagın anlamına gelır degıstırmedıgın surece onu sen
private asyn Task yada public olarak yaparsan daha verimli olacaktır. ayrıca bır try catch bloğu da kullanmanı onerırım en azından hatayı dırek algılarsın.
ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com
Merhaba kaydetmemesinin nedeni web config dosyasında datasource yerini (.) olarak bırakmışım. Ip adresini yazınca sorun çözüldü.
Taskında static olmasına gelince Console uygulamasında deniyorum kodları yazmadan önce. orada main static olduğundan başına static yazmak gerekiyordu. Bende alışkanlıktan dolayı öyle yazmışım. Aydınlattığınız için teşekkürler 🙂