1. Page_Load içerisinde neden if(!isPostBack) kontrolün yok. Sayfa her postback olduğunda aynı şeyleri tekrar tekrar yüklüyorsun.
Ek olarak debug yapmıyor musun kodunu? Page_Load'a bir debug point koyup çok rahat bir şekilde hatanı görebilirsin.
2. HaberAdi, MetaTagDetay gibi değişkenlerin Page_Load'a ilk girdiğinde zaten null. Yazmaması gayet normal. Onları DataRow'u doldurduktan sonra yazdırıyorsun ve 2. yenilemede zaten artık null olmadığından yazdırıyor.
Doğru kullanım şekli:
protected void Page_Load(object sender, EventArgs e)
{
if(!isPostBack)
{
HaberId = Ayarlar.sayikontrol(Ayarlar.Temizle(RouteData.Values["HaberId"].ToString()));
Mansetler();
DataRow dr = system.GetDataRow("Select * from Haberler Where HaberId=" + HaberId);
if (dr != null)
{
HaberAdi = dr["Baslik"].ToString();
MetaTagDetay = dr["Detay"].ToString();
ltrlBaslik.Text = HaberAdi;
ltrlDetay.Text = dr["Detay"].ToString();
Page.Title = HaberAdi;
Page.MetaDescription = MetaTagDetay;
Page.MetaKeywords = HaberAdi.Replace(" ", ",");
if (dr["Onay"].ToString() == "1") ltrlDetay.Text += "<br /><br />Onay";
if (dr["Vitrin"].ToString() == "1") ltrlDetay.Text += "<br /><br />Vitrin";
if (dr["Manset"].ToString() == "1") ltrlDetay.Text += "<br /><br />Manset";
if (dr["Krediyeuygun"].ToString() == "1") ltrlKrediyeuygun.Text += "<img src='img/okey.jpg" + "' align='left' hspace='5' />Krediye Uygun";
if (dr["Takasaacik"].ToString() == "1") ltrlTakasaacik.Text += "<img src='img/okey.jpg" + "' hspace='5' />Takas Olur";
ltrlEklenmeTarihi.Text = dr["EklenmeTarihi"].ToString();
ltrlFiyati.Text = dr["Fiyat"].ToString();
ltrlBanyosayisi.Text = dr["Banyosayisi"].ToString();
ltrlOdasayisi.Text = dr["Odasayisi"].ToString();
ltrlMetrekare.Text = dr["Metrekare"].ToString();
ltrlBinayasi.Text = dr["Binayasi"].ToString();
ltrlBinadakikatsayisi.Text = dr["Binadakikatsayisi"].ToString();
ltrlBulundugukat.Text = dr["Bulundugukat"].ToString();
ltrlKullanimdurumu.Text = dr["Kullanimdurumu"].ToString();
ltrlIsitma.Text = dr["Isitma"].ToString();
ltrlHit.Text = dr["Hit"].ToString();
ltrlFiyati.Text = dr["Fiyat"].ToString();
system.cmd("Update Haberler set Hit=Hit+1 Where HaberId=" + HaberId);
}
else
Response.Redirect("Default.aspx");
}
}Tavsiye: Konuların cevaplandıktan sonra değişiklik yapma, seninle aynı sorunu yaşayanlar nasıl çözüldüğünü görsünler.
teşekkür ederim hocam,
sorunsuz çalıştı
tavsiyenizi dikkate alcam.
tekrar teşekkürler