Oturum ve ViewState karşılaştırması
ViewState ve oturum, web uygulamalarındaki sorunların çözümlerinden ikisidir. Sorun, belirli bir süre içinde bir web sayfasına erişen bir bilgisayar kullanıcısını içerir. Bir süre kullanımdan sonra veya kullanıcı uygulamayı kapattıktan sonra, web sayfasının bilgileri ve erişimi son kullanım günlüklerinden silinir.
ViewState yalnızca geri gönderme sırasında geçerlidir ve yalnızca serileştirilmiş veriler için geçerlidir. ViewState, her şeyden önce, Web kontrollerinin postback'ler arasındaki değerlerini korumasını sağlayan nesne / mimaridir. Oturum gibi, ViewState de çalışabilir ve bir sunucu tarafından erişilebilir.
ViewState'teki bilgiler, istemci için yalnızca tarayıcının gizli alanlarında şifrelenmiş bir değer olarak saklanır. Bu, verileri güvenli hale getirmez ve muhtemelen saldırıya maruz bırakır. Geri gönderimler sırasında ViewState, belirli bir web sitesindeki değişiklikleri izler.
ViewState ayrıca belirli bir sayfanın denetim değerini de korur. Bu, bir sayfadaki verilerin mevcut olmadığı, erişilemeyeceği veya başka bir sayfaya kopyalanamayacağı anlamına gelir. ViewState sayfa düzeyinde veya geçerli, canlı sayfada tutulur. Son kullanma noktası yoktur ve belirli denetimler için ViewState'te etkinleştirilebilir veya devre dışı bırakılabilir.
ViewState, sayfanın kapanana kadar devam eden sayfanın kaynak kodunu görüntülerken görülebilir. ViewState çoğunlukla geçerli sayfada az miktarda veri (genellikle bir dize ve diğer serileştirilmiş veriler) tutmak için kullanılır. Ayrıca, ViewState oturuma kıyasla daha fazla bant genişliği tüketir, ancak daha az bellek ve bellek alanı kullanır. ViewState, sayfa kapatıldığı anda tüm veriler kaybolduğundan çok fazla bellek içermiyor.
Bu arada, oturum Web sayfaları için daha yaygın olarak kullanılır ve yalnızca sayfayı değil, söz konusu tarayıcıyı veya sayfayı kullanan bir kullanıcının tüm uygulamasını ve tüm süresini etkiler. Oturum her tür nesne için geçerlidir ve tarayıcının sunucu belleğinde saklanır. Sakladığı veriler, bilgisayar kullanıcısının veya başka bir deyişle kullanıcıya özgü verilerdir. Kullanıcı, tarayıcı uygulamasını kapatana veya oturumun süresi sona erene kadar veriler kullanılabilir.
ViewState'ten farklı olarak, oturumdaki verilere oturum içindeki başka bir pencereye veya sayfaya erişilebilir veya çoğaltılabilir. Oturumlar ayrıca belirli denetimleri devre dışı bırakma veya etkinleştirme yeteneğine de sahip değildir. Oturum ayrıca bellek yuvasında saklanacak farklı veri türlerini de içerir. Oturumun, sunucu belleği kullandığı için ViewState'e kıyasla daha büyük bir belleği vardır. Bunun dezavantajı, oturumun bir sona erme süresine sahip olmasıdır ve sunucu belleğinde depolanan veri miktarı sunucu yükünü etkileyebilir.
Özet:
ViewState ve oturumun yanı sıra, diğer ASP.NET çözümleri uygulama değişkenlerini, önbelleği ve çerezleri içerir. ViewState ve oturum bir sunucu ortamında hem çalışabilir hem de erişilebilir olabilir.
3. Sunucu tarafında oturum kullanılırken, istemci tarafında ViewState kullanılır. İstemci tarafında olmak ViewState'in süresinin dolmasına neden olmaz. Bunun tersi (son kullanma tarihi ve sunucu tarafında olmak) oturum içindir.
4. ViewState, oturum çok sayıda veri türünü tutarken yalnızca bir dize veya serileştirilebilir verileri tutabilir. Bu, ViewState'teki veri miktarını oturumlarınkinden çok daha az yapar.
ViewState bu özelliğe sahip değilken oturum yeni bir sayfaya veya pencereye veri çoğaltabilir veya erişebilir.
6.Session, verilerini sunucu belleğinde depolarken ViewState, verilerini bir tarayıcının gizli alanlarındaki şifreli veri olarak gizler. 7.Sunucu belleği farklı türde veriler tuttuğundan, büyük miktarda depolanmış veri sunucu yükünü etkileyebilir.