עדכון מידע בדטה סט

  • פותח הנושא q8z
  • פורסם בתאריך

q8z

New member
עדכון מידע בדטה סט

שלום מה הבדל בין 2 השיטות? בתודה
 

gilad g

New member
יש הבדל

כשאתה כותב row.ItemArray, ה-CLR קורא ל-get accessor של ItemArray. שם יש פרוצדורה פשוטה שעוברת על כל הערכים של השורה, ומעתיקה (כן כן, מעתיקה! בדוק ב-reflector...) אותם לתוך מערך object[] חדש. לכן, בשיטה עם ItemArray אתה לא מעדכן את השורה עצמה, אלא את המערך החדש הזה... השורה לא משתנה.
 
רגע שאני יבין נכון

ItemArray זה למעשה כל השדות שבשורה, לא?, עכשיו אם זה נכון, אז לפי ההסבר שאמרת נניח כשאתה עושה השמה לשדה 0 בשורה אם הItemArray אז למעשה אין השמה,כלומר אין שום שינוי בשורה עצמה, רק בobject החדש,זה נכון?! עכשיו למעשה יש פה 2 מערכים?
 
נפל האסימון

רק עכשיו נפל לי האסימון והבנתי למה קוראים לזה item array ,משום מה חשבתי על זה רק כאייטמים של השורה, חבל אולי היה נותנים לזה שם בולט ומסביר יותר.
 

סומבודי

New member
תשובה

סביר שה-CLR מבצע עושה כמה Castings כשאתה קורא למאפיין. אינך יודע איזה אובייקט יושב במחלקה מאחורי המאפיין ItemArray. בכל מקרה, זהו לא נושא להיות מוטרד בגינו.
 
למעלה