A
aXi
Ziyaretçi
Ziyaretçi

Merhaba Arkadaşlar ;
Artık asp.Net ile kodlamalara başlıyoruz ilk olarak 3.5 ile birlikte gelen Viewstate kavramını öğreneceğiz ne işimize yarar sağladığı avantajlar ve dezavantajları örneğimizde göreceğiz.
Textbox kontrolünde olay bildirim kodlarını saklar bunu ise biz bir Default.aspx adında bri sayfa açalım ve sahneye bri tane textbox ekleyelim.
1
<<SPAN class=colorKeywords5><STRONG>asp</STRONG></SPAN> :textbox id="textbox1" runat="server" />
Sadece bu şekilde ekler isek bir olay gerçekleşmediğinde viewstate yordam saklama ihtiyacı duymayacaktır. En basit bir örnek yapalım hemen ViewState görmek amaçlı
Form Sayfamız Arkadaşlar Default.aspx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
< %@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
< !DOCTYPE <SPAN class=colorKeywords20><STRONG>Html</STRONG></SPAN> PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<<SPAN class=colorKeywords20><STRONG>Html</STRONG></SPAN> xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<<SPAN class=colorKeywords5><STRONG>asp</STRONG></SPAN> :Label ID="mesaj" runat="server"></<SPAN class=colorKeywords5><STRONG>asp</STRONG></SPAN>><br />
<<SPAN class=colorKeywords5><STRONG>asp</STRONG></SPAN> :TextBox ID="isim_kutusu" OnTextChanged="isim_girdisi" runat="server"></<SPAN class=colorKeywords5><STRONG>asp</STRONG></SPAN>>
<<SPAN class=colorKeywords5><STRONG>asp</STRONG></SPAN> :Button ID="Button1" runat="server" Text="Yazdır" /><br />
<br />
</div>
</form>
</body>
</<SPAN class=colorKeywords20><STRONG>Html</STRONG></SPAN>>
[<SPAN class=colorKeywords3><STRONG>Php</STRONG></SPAN>]
Şimdide Kodları yazacağımız<strong> Default.aspx.cs</strong>
[<SPAN class=colorKeywords3><STRONG>Php</STRONG></SPAN>]
using <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>;
using <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>.Data;
using <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>.Configuration;
using <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>.Web;
using <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>.Web.Security;
using <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>.Web.UI;
using <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>.Web.UI.WebControls;
using <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>.Web.UI.WebControls.WebParts;
using <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>.Web.UI.HtmlControls;
public partial class _Default : <SPAN class=colorKeywords33><STRONG>system</STRONG></SPAN>.Web.UI.Page
{
protected void isim_girdisi(object sender, EventArgs e)
{
mesaj.Text = "Merhaba " + isim_kutusu.Text + "<b><font color=red>...TheCoders.Com Bilgi Paylaştım Sitesine Hoşgeldin.</font></b><br />" + DateTime.Now.ToString()
;
}
}
Buraya Kadar Yapımş Olduğumuz Örnek Gayet Basit olduğunu göreceksiniz zaten bri textbox içine isim yazdırıyor ve butona basıldığında bizim belirlediğimiz mesaj ile birlikte textbox içine yazdığımı mesaj ile ekrana yazdırılıyor. Peki bu arda ViewState nasıl göreceğiz derseniz hemen size localhost da çalıştırdın dan sonra localhostda sayfa üzerinde sağ cilick kaynağı görüntüle ile sayfanın kaynak kodunu yazıyorum
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<form name="form1" method="post" action="Default.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTIxNDI
yOTM0Mg9kFgICAw9kFgQCAQ8PFgIeBFRleHQFf01lcmhhYmEgRXJrYU4gV
GVwZTxiPjxmb250IGNvbG9yPXJlZD4uLi5UaGVDb2RlcnMuQ29tIEJpbG
dpIFBheWxhxZ90xLFtIFNpdGVzaW5lIEhvxZ9nZWxkaW4uPC9mb250PjwvY
j48YnI+Ni8yNi8yMDA5IDI6NTg6MDUgUE1kZAIDDw8WAh8ABQpFcmthTiB
UZXBlZGRktv7DtmLlNOqWP0TEanfmNfQAtcI=" />
</div>
<div>
<span id="mesaj">Merhaba ErkaN Tepe<b><font color=red>...TheCoders.Com Bilgi Paylaştım Sitesine Hoşgeldin.</font></b><br />6/26/2009 2:58:05 PM</span><br />
<input name="isim_kutusu" type="text" value="ErkaN Tepe" id="isim_kutusu" />
<input type="submit" name="Button1" value="Yazdır" id="Button1" /><br />
<br />
</div>
<div>
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAwLwiaifBQLzqNCkCgKM54rGBmWp15gU6xjkgSzvCL8sJN+xiM2Z" />
</div></form>
İşte Arkadaşlar ViewState value değerini gördünüz sinsice daha doğrusu akıllıca buraya bir Value(değer) gönderdi ve client tarafındaki kullanıcı bunun ne olduğu anlamadı yani gizli bir form elemanı oluşturdu ve girilen değerleri burada kodlayarak yani value=”…..” Değerler atayarak gizledi.
ViewState Dez avantaji ise bizi lazım olmiyacak yerlerde kullanılmıası örneğin veri çekmek istediğimiz bir GridView olması bizm dezavantajımız Neden çünkü zaten ama kişiye veriyi göstermek nedne ViewState kullanarak gizliyelimki hem bu sayfanın boyutunu artıracak ve gereksiz yere sayfayı performansını etkileyecek Peki ViewState nasıl buradan kaldıracağız eklemiş olduğunuz GridView de arkadaşlar gelip EnableViewState=”false” Dediğiniz vakit artık GridView’de ViewState tekonolojisi kullanılmayacak . İnş Yararlı olmuştur. Diğer Makalelerde Görüşmek Ümidiyle KalınSalıcakla..