using System; using System.Collections.Generic; using System.Linq; using System.Data.SqlClient; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class MesajGonder : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) {
" mesj.SubmitChanges " kısmında hata alıyorum. Dün gönderiyordu bütün mesajları bugün denedim gitmiyor. Hata gözükmüyor ama yinede anlayamadım. O olmadan diğerlerinin bir anlamı kalmıyor zaten. Yardımlarınızı bekliyorum arkadaşlar.
GONDEREN = TxtKimden.Text; ALICI = TxtKime.Text; KONU = TxtKonu.Text; MESAJIN = txtMesaj.Text; TARIH = DateTime.Now;
yanlız burada datetime nesne olarak geliyor.string olarak gönderecekseniz alttaki gibi kullanmalısınız:
tarih= Convert.ToString(DateTime.Now);
Orası sorun değil GridView'e tablodan verileri çektiğimde mesajı attığı saliseye kadar gösteriyor. Hatayı buldum önemsemeyip nvarchar(50) Tipi vermiştim şu an MAX yaptım. Bir an utandım kendimden.
nvarchar(50) ile max arasında ki fark karakter sayısı. 50 karakter den az veri gönderdiğiniz de yine çalışması lazım eğer başka bir sıkıntı yoksa.uygulamada trim ile gereksiz boşlukaları silerek karakter tasarrufu yapabilirsiniz.uygulamaya karakter sayacı ekleyip gönderilecek mesajın boyutunu da sınırlandırabilirsiniz.
nvarchar(50) ile max arasında ki fark karakter sayısı. 50 karakter den az veri gönderdiğiniz de yine çalışması lazım eğer başka bir sıkıntı yoksa.uygulamada trim ile gereksiz boşlukaları silerek karakter tasarrufu yapabilirsiniz.uygulamaya karakter sayacı ekleyip gönderilecek mesajın boyutunu da sınırlandırabilirsiniz.
Linq yöntemi ile ekleyebilir miyim karakter sayacını
linq e gerek yok .lenght ile halledilir. max.lenght komutuyla maksimum boyut sınrılanır örneğin standart sms sanırım cep telefonlarında 180 karakter nvarchar(180) yapılır ise 180 karaktere kadar veri kaydeder. txtbox.maxlenght=180 sanırım böyle yazılıyordu bu komut la da textbox içine yazılabilecek maksimum değer belirlenir.
sayaç için bir label belirlersiniz ve textbox keypress eventine sayaç atarsınız örnek kod:
public Form1() { InitializeComponent(); textBox1.MaxLength = 179; }
linq e gerek yok .lenght ile halledilir. max.lenght komutuyla maksimum boyut sınrılanır örneğin standart sms sanırım cep telefonlarında 180 karakter nvarchar(180) yapılır ise 180 karaktere kadar veri kaydeder. txtbox.maxlenght=180 sanırım böyle yazılıyordu bu komut la da textbox içine yazılabilecek maksimum değer belirlenir.
sayaç için bir label belirlersiniz ve textbox keypress eventine sayaç atarsınız örnek kod:
public Form1() { InitializeComponent(); textBox1.MaxLength = 179; }
using System.Collections.Generic;
using System.Linq;
using System.Data.SqlClient;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class MesajGonder : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
if (TxtKonu.Text == "" || TxtKime.Text == "" || TxtKimden.Text == "" || txtTarih.Text == "" || txtMesaj.Text == "")
{
lblDoldurHata.Text = "<font color='red'>Lütfen Bütün Alanları Doldurunuz!</font>";
}
else
{
MesajDataContext mesj = new MesajDataContext();
MESAJ mesaj = new MESAJ()
{
GONDEREN = TxtKimden.Text,
ALICI = TxtKime.Text,
KONU = TxtKonu.Text,
MESAJIN = txtMesaj.Text,
TARIH = DateTime.Now
};
mesj.MESAJs.InsertOnSubmit(mesaj);
mesj.SubmitChanges();
TxtKonu.Text = "";
TxtKime.Text = "";
TxtKimden.Text = "";
txtTarih.Text = "";
txtMesaj.Text = "";
Onay.Text = "Tebrikler! Mesajınız Başarılı Bir Şekilde Gönderildi!";
}
}
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("MesajListesi.aspx");
}
}
" mesj.SubmitChanges " kısmında hata alıyorum. Dün gönderiyordu bütün mesajları bugün denedim gitmiyor. Hata gözükmüyor ama yinede anlayamadım. O olmadan diğerlerinin bir anlamı kalmıyor zaten. Yardımlarınızı bekliyorum arkadaşlar.