Disposable Property

יום שלישי, פברואר 9, 2010

  עדי הראה לי רעיון מאוד מעניין למימוש שמירת אובייקט זמני בזיכרון. למה הכוונה ?   נניח שיש לנו קוד כזה   public class FileLogger : ILogger { } public class MockLogger : ILogger { }   public class Person {     public ILogger Logger { get; set; } }   ויש לנו את פונקצייה שמקבלת כפרמטר Person אבל בחלק מהקוד של הפונקצייה לא רוצים שה - Logger יהיה FileLogger אלא MokeLogger - מן הסתם נעשה קוד כזה   public void Func(Person person) {     ILogger original = person.Logger;     person.Logger = new MockLogger();       //work.....       person.Logger = original;   }   מה שעדי הציע - זה לעשות את הקוד הבא   using (DisposableProperty<ILogger>.Set(person, new MockLogger())) {     // work..     }   וכעת באורח פלא בתוך בלוג ה - using ה -...
4 תגובות

Test method for internal class – using InternalsVisibleTo

יום שישי, אפריל 17, 2009

  רציתי לכתוב UnitTest ל Dal שלי,   אבל ה Dal היה מוגדר כ internal, מה שגרם לכך שאני לא יכול לכתוב עבורו UnitTest, כי הם מכירים רק את ה public.   חיפוש קטן בגוגל הביא אותי לבלוג הזה של Ben Hall   הפתרון ממש נחמד, attribute שלא הכרתי בשם InternalsVisibleTo שנותן את האפשרות שגם ה internals יוכרו ב asembly אחר.   לדוגמא: יגרום לכך, שה TestDal  יכיר את ה internals,        
3 תגובות