Ender
24 Aralık Perşembe 2009 18:01
#1
Merhaba ...
Güzel bir çalışma ancak farzedelim ki benim bir categori sayfam war ve kategori sayfasından kategoriid sini querystring ile ürün sayfasına yünlendirdim.
Ürünler sayfasında da datalist veya repeater ile listeledim.
Sorun:
burada meta tağları ve özellikle title ' yi otomatik olarak <%#Eval("UrunAdi")%> olarak gösterebilir miyiz.?
Elle yazında oluyor ama veritabanından çekebilir miyiz .?
Ben denedim ama olmadı acaba başka bir şey daha mı yapmak gerekiyor .?
Teşekkürler ...
Merhaba. Zaten amacım bu bilgileri dinamik olarak nasıl yapabileceğimizi göstermekti. Ancak senin söylemiş olduğun gibi Eval nesnesi ile bu işlemleri yapmak imkansız. Eval nesnesi sadece data kontrolleriyle kullanılıyor. Sayfanın başlığını veya meta bilgilerini veritabanındaki verilerle eşleştirmek için verileri aldıktan sonra (datatable'a veya başka nesnelere) aldığın verinin içinden istediğini çekip, sayfa başlığına veya meta taglarına aktarmalısın.
merhaba.bir aspx sayfamda masterpage in bir bölümünde değişiklik yapıyorum.Yani Master.findcontrol.. şeklinde ama bu işlemi yaptıktan sonra başka bir sayfaya yönlendirdiğimde masterpage içindeki o bölüm ilk şekline dönüyor.(o sayfa da masterpage bağlı)
Yani ben masterpage de dinamik olarak değişiklik yapıyorum ama masterpage hersayfada tekrar yüklendiğiden ilk konumuna dönüyor.
yani ben birsayfada masterpage müdahale ettikten sonra bu masterpage bağlı sayfalarda da o şekilde görünsün istiyorum.
Bunu nasıl yapabilirim?sindiden tesekkurler..
Merhaba. Tam olarak ne yapmak istediğini anlamadım ama bir sayfada değişiklik yaptığında yaptığın değişikliğin her yerde tutarlı olmasını istiyorsan verileri bir yerde (veritabanı) tutman gerekir. Sayfa yüklenirken verileri veritabanından alırsın ve değişiklik yaptığında da veritabanına yazarsın. Böylece sorun olmaz.
daha açık olarak masterpage de iki panelim var bunlardan birisi uyegirişi diğeri giris yapıldıktan sonra göstermek istediğim kullanıcı paneli(burda çıkış linki var)Sayfa ilk yüklenirken ilk panel açık ama giris yapıldıktan sonra ikinci paneli açmak ve çıkış yapana kadar diğer sayfalarda da gezinirken hep ikinci panelin açık kalmasını sağlamaya çaılşıyorum(yenibiriş.com gibi)
buna midahale ediyorum ama diğer sayfalara geçtiğimde masterpage tekrar yüklendiği için birinciyi açıp ikinciyi kapatıyor?
Bu konuda üyenin giriş yapıp yapmadığını tutman lazımki ona göre panellerden hangisinin açık olacağına karar veresin. Her yeni yüklenişte panellerden istediğin gelmiyorsa bir yerde bir eksiklik vardır.
kemal
03 Mayıs Pazartesi 2010 15:58
#8
tüm kontrolleri yapıyorum neyse.herhalde şurdan kaynaklanıyor:Bir sayfa düşünelim default.aspx burada çıkış linki var.Bu linke tıklanılınca Formauthentications.signout() yapıyorum.(web config izinlerini de yaptım)bu linke tıklanıldıkan sonra browserı kapatmadan defult.aspx e tekrar girince(ctrlc ctrlv)açılıyor? ama f5 yaptığımda web config de yaptığım ayarlar doğrultusunda login.aspx e gidiyor.Neden böyle oluyorf5 farkıne bu sırada postback durumlarını da kontrol ettim(yani ispostbackolupolmama
Sanırım tarayıcılardaki cache durumundan bahsediyorsun. Bu durum sadece senin için değil çoğu site için geçerli. Tarayıcılar daha önce açılmış sayfaları genelde cache'den alıyorlar. F5 tuşu yeni bir istek ile verileri alır ve sunucudaki son durumu getirir. Burada senin istediğin gibi çalışıyor ama diğer türlü cache'den dolayı eski sayfa açılıyor. Bu sitelerin çoğu için geçerli. Çözmek için script kod kullanılabilir ama bence gerek yok ve büyük bir problem değil.
Problem değil demişsiniz ama kullanıcı kendi profilinden çıkış yaptıktan sonra ctrlc ctrlv deyip tekrardan kendi sayfasının açıldığını görmesi de saçma olur.Bu sırada kullanıcı sınıfını sessiona atıyorum.cıkısta sessionı null yapıyorum.ama o da f5 istiyor.Bir de cogu sitede var demişsiniz ama öyle değil diğer siteler de belirli önlemler alınmış ama ne?mesela yenibiris.com da asp.net ile yapılmış ama kendi profilim için denediğimde bir sorun yok.
Bu sırada zaman ayırdğın icin de tesekkur ederim.
<%@ OutputCache Duration="1" VaryByParam="none" %>
sayfaya bu direktifi verince(sayfanın en üstüne yazdım) sorun kalktı yani 1 saniyeliğine cache işlemi yapıyor.Ama mantıklı mı?
Yani performans kaybına yol açmaz mı?
Sence bu amatörce bir yaklaşım mı oldu?:))
Merhaba. Bu şekilde sorun çözülebilir ama her tarayıcıda aynı sonucu vermiyor diye biliyorum. Bunun için Response.Cache.SetNoStore(); şeklinde bir kullanım yapabilirsin. (Response.Cache altında bulunan diğer metotlar da işine yarayabilir.)
tebrik ederim çok güzel bir anlatım tarzınız var.