State in asp.net

יום רביעי, יולי 14, 2010

  היכן ניתן לשמור מידע בעולם ה - web.     כידוע לכל מפתח WEB מתחיל - עולם ה - WEB הינו state less כלומר לפי ההגדרה אתר לא אמור לשמור מידע על המשתמשים בו, למרות זאת הרבה פעמים אנחנו צריכים לשמור מידע.   בפוסט הזה נסכם את האופציות.     צד הלקוח.   עוגיות - עוגיות הם אחד מהאופציות הישנות והטובות לשמירת מידע, היתרון הגדול שלהם הם שניתן לשמור בהם מידע לאורך זמן החיסרון הגדול שלהם שהם נשלחים בכל בקשה לשרת, ניתן לקרוא עוד כאן .   hidden filed - ככל האלמנטים מסוג input הערכים שבהם נשלחים לשרת ולכן אפשר לשמור בו מידע מבלי שהמשתמש יראה, כמובן שאחרי מעבר לדף אחר...
תגיות: , , ,
תגובה אחת

Add functionality using Document Object Model Prototypes (IE8) – Part 2

יום ראשון, מאי 9, 2010

  איך להוסיף ולשנות מאפיינים ל - DOM בעזרת prototype ב - IE8     כפי שהתחלתי לתאר כאן איך אפשר להוסיף ולשנות מתודות של ה - DOM ב - IE8, מסתבר שאפשר גם להגדיר מאפיינים ל - DOM.     לדוגמא:   נניח שאנחנו רוצים לדעת כמה אותיות יש בדף, נוכל תמיד לכתוב פונקציה ולקרוא לה, אבל מיד נראה שב - IE8 נוכל להוסייף מאפיין בשם words לאובייקט document ולקרוא לה. איך ? פשוט מאוד.     Object.defineProperty(document, "words", {     get: function() {         var sum = 0;         var arr = document.body.innerText.split(' ');         sum = arr.length;           for (var i = 0; i < arr.length; i++) {             if...
תגיות: , , , ,
אין תגובות

IE8 – DOM Storage

יום שישי, אפריל 16, 2010

  אני מכין חומר בימים אלו על Internet Explorer 8 - למעשה כבר התחלתי לכתוב על זה בעבר, וכעת אני מתכוון להמשיך.   בפוסט הנוכחי אני אדבר על אחד מהתכונות הטובות ביותר שיש ב - IE8. Dom Storage   מפתחי WEB יודעים שיש כמה דרכים לשמור מידע, חלק מהדרכים הם בצד הלקוח וחלק בצד השרת, בדרך כלל גם כששומרים מידע בצד הלקוח השרת מכיר את המידע, הדרך הוותיקה והנפוצה לשמור בצד הלקוח כמובן עוגיות, עוגיות הם הדרך הטובה ביותר לשמור מידע בצד הלקוח לאורך זמן.   כמובן שגם לעוגיות יש חסרונות, כשהחיסרון הגדול הוא שזה לא קל לגשת אל המידע שנשמר בעוגייה (צריך לשחק עם מחרוזות) וכמובן...
תגיות: , , ,
אין תגובות

מחיקת Cookie בצד השרת – HttpCookie.Expires

יום ראשון, מרץ 14, 2010

  הקרדיט מגיע לאחי יוסי גולדברג   כתבתי פוסטים על שימוש ב - Cookie. כעת נראה כיצד ניתן להסיר עוגיות בצד השרת.   נניח שיש לכם עוגייה שנקראת MyCookie ואתם רוצים להסיר אותה, למעשה בכל Request שיגיע מהלקוח ה - Cookie יצטרף לבקשה, מה שצריך לעשות זה לכתוב את הקוד הבא   Response.Cookies.Add(new HttpCookie("myCookie") { Expires = DateTime.Now.AddDays(-1) });   למעשה מצרפים ל - Response עוגייה עם אותו שם כשתאריך התפוגה נקבע לזמן ישן, כך כשהתשובה חוזרת ללקוח העוגייה נמחקת.     אם כבר מדברים על - Expires, אם נייצר עוגיות ולא ניתן שום ערך למאפיין הזה, הוא יחיה רק בזיכרון של הדפדפן וכשהדפדפן יסגר גם העוגייה תעלם, במידה וניתן ערך...
תגיות: , ,
אין תגובות

Using Cookie in Client Side (JavaScript)

יום שני, פברואר 8, 2010

  בהתבסס על הפוסט הקודם אדגים כאן איך ניתן לכתוב ולקרוא מה - Cookie בצד הלקוח.   למעשה בפוסט הקודם הצגתי איך יוצרים Cookie בצד השרת שיש לו הרבה ערכים - ככה:   HttpCookie cookie = new HttpCookie("ClientColumns"); for (int j = 0; j < cbl.Items.Count; j++) {     cookie.Values.Add("name", "value"); }   ברור שאפשר גם לייצר Cookie שיש לו רק ערך אחד   HttpCookie cookie = new HttpCookie("ClientColumns"); cookie.Value = "value";   שימו לב להבדל בין שימוש ב - Values לבין שימוש ב - Value.     בצד הלקוח גם כן אפשר לייצר Cookie שיש לו ערך אחד או יותר. הנה הפונקצייה לייצר ולקרוא מ - Cookie (הפונקצייה הועתקה מכאן - מומלץ לקרוא)   function CreateCookie(name, value, expiredays) {     var expires...
תגיות: , ,
אין תגובות

Using Cookie in server side

יום שבת, פברואר 6, 2010

  בפוסט הזה אני רוצה להדגים איך משתמשים ב - Cookie בצד השרת.   Cookie הוא אחד מהדרכים הותיקות ביותר לשמור מידע בצד הלקוח שניתן להשתמש בו גם בצד השרת.     נניח שיש לכם את קוד שמציג גריד עם מספר עמודות גדול מאוד ויש על הדף CheckListBox שמאפשר למשתמש להחליט איזה עמודות הוא מעוניין לראות.   הקוד נראה כך:   בצד הלקוח:   <asp:CheckBoxList ID="cbl" runat="server" RepeatDirection="Horizontal">     <asp:ListItem Text="Id" Selected="True"></asp:ListItem>     <asp:ListItem Text="First Name" Selected="True"></asp:ListItem>     <asp:ListItem Text="Last Name" Selected="True"></asp:ListItem>     <asp:ListItem Text="Age" Selected="True"></asp:ListItem>     <asp:ListItem Text="Salaty" Selected="True"></asp:ListItem>     <asp:ListItem Text="Seniority" Selected="True"></asp:ListItem> </asp:CheckBoxList>   <br />   <asp:GridView ID="grid1" runat="server" OnRowDataBound="grid1_RowDataBound"> </asp:GridView>   <br />   <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />   יש לנו CheckListBox עם השמות של כל העמודות. Grid ולחצן (כדי שנוכל לעשות PostBack).   צד השרת:   protected...
תגיות: , , ,
אין תגובות