עבור לתוכן

שאלה | c# asp.net - אני רוצה לעבוד עם collection שהוא ספיציפי לכל גולש

Featured Replies

פורסם

כשאני עובד עם collection כמו List, מה שקורה שכל הגולשים משתמשים באותו collection . ואני מעוניין שה collection יהיה לכל גולש, לשם חישוב מסוים ששייך רק לגולש ספיציפי. וכל גולש, יכול לחשב עם ה collection ששייך לו.

אז ניסיתי להשתמש ב session, להכניס את ה collection לתוך משתנה session. אבל כשבדקתי אם זה עובד, לא נראה שזה עובד פר גולש, כפי שציפיתי. נראה לי שעדיין כל הגולשים משתמשים באותו collection.

בכל אופן צירפתי קובץ, שבו חלק מהקוד שלי. שימו לב למשל לדגש בצהוב, האם זו דרך נכונה??

אם לא, אז מהי הדרך לעשות את זה, שה collection יהיה פר גולש??

תודה לעונים נכונה...

שריה

[attachment deleted by admin]

פורסם

הבעיה שלך היא שהגדרת את הרשימה בתור static. במקום זה, אתה צריך ליצור רשימה עבור הסשן שלך (כלומר לבדוק אם הסשן שלך כבר מכיל רשימה כזו, ואם לא אז ליצור אותה).

נ.ב. למה העלית את הקוד בתור קובץ וורד? יכלת להעלות קובץ cs...

פורסם
  • מחבר

תודה! :)

עכשיו נראה לי שהכול בסדר...

רק לשם ההבנה וההבהרה - אני מבין שהמשתנה session היה צריך לקבל את ה- collection דרך אובייקט, ולכן כפי שאמרת, צריך לא להגדיר static.

אשמח לשמוע, מה הסיבה שאני חייב אובייקט, ואי אפשר שיהיה static ? (שאבין יותר לעומק מה עשיתי...)

תודה!

פורסם

static אומר שקיים אך ורק אחד כזה במערכת, וכמובן אתה לא רוצה דבר כזה.

לא חייבים שיהיה חלק ממחלקה, אפשר לעשות משהו בסגנון הזה:

if (Session["current"] == null) {
Session["current"] = new List...
}

(השלוש נקודות זה כי אני לא זוכר מה הטיפוס המדויק של הרשימה שלך)

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים