Browse by Tags
All Tags »
טריקים (
RSS)
הקדמה באחד הפוסטים הקודמים כתבתי על Data Transfer Objects והשימוש בהם לעבודה נכונה ונוחה עם LINQ to SQL ו- ADO.NET Entity Framework. בין התגובות שקיבלתי בפורום “תכנות .NET” בתפוז שבתגובה לשאלה שעלתה בו פורסם הפוסט, עלה העניין שלמרות שמדובר בכתיבה יותר נוחה, היא דורשת למעשה עבודה כפולה בהתחלה, וגם ציינתי זאת בפוסט. כשמתחילים לכתוב, יש צורך לכתוב DTO נפרד לכל אחת מהישויות עם תחילת העבודה, וגם בד”כ לכתוב מתודות שמבצעות העברה בין הDTO לאובייקט שנמצא ב DAL (האובייקט שמופה ע”י הORM) ולהיפך – לכתוב מתודה...
אפשרות חמודה שקיימת ב SQL Manegment Studio 2008 היא להגדיר לאופציית ה” GEnerate Scripts” של הדטאבייס גם לייצא את הנתונים (כלומר, לייצר משפטי INSERT לטבלאות). האפשרות הזאת לא קיימת בגרסא 2005 (יש Generate Scripts – אין Data – כלומר שלמדתי על בשרי כשלא הבנתי לאן נעלמה האפשרות), אבל אין שום מגבלה על התקנה ושימוש ב Management Studio 2008 גם מול instance של SQL Server 2005. השימוש העיקרי של האפשרות הזאת, הוא העברת מידע משרתי הפיתוח לפרודקשן כאשר רוצים להעביר טבלאות חדשות מסויימות או אובייקטים חדשים מסויימים...
בעקבות שאלה שקיבלתי, כמה מילים על FooterTemplate ב Repeater: ה FooterTemplate מאפשר לקבוע תבנית עיצובית שתופיע בתחתית ה Repeater לאחר כל ה DataBound Items. ניתן, כמובן, כמו כל מקום, לשלב שם כל Control שאתם רוצים. וכעת, לשאלה – איך ניגשים אליהם בלי להשתמש באף אחד מה events של ה Repeater? קצת מגושם, לא מורכב. בדוגמא הזאת, נניח של Repeater קוראים rpSample, ל control שאחנו מחפשים קוראים calDate והוא מהסוג Calendar. ככה הקוד ייראה: Calendar myCal = (Calendar)rpSample.Controls[rpSample.Controls...
כשעובדים מול LINQ to SQL או ADO.NET Entities Framework, אנחנו עובדים הרבה מאד מול אובייקט ה DataContext / Entities. דוגמא מאד נפוצה בדוגמאות ובמדריכים של הטכנולוגיות הללו היא ליצור מופע של המודל בכל מתודה וכל פעם שמשתמשים בו. למשל: 1: public static void Method1() 2: { 3: using (var data = new DataClassesDataContext()) 4: { 5: //Code 6: } 7: } 8: public static void Method2() 9: { 10: using (var data = new DataClassesDataContext()) 11: { 12: //Code 13: } 14: } וכך יש הרבה מתודות, כל אחת עושה new DataClassesDataContext...
אם רוצים ליצור צלמית של תמונה (גרסא מוקטנת שלה), ניתן כמובן לחתוך אותה באופן ידני. אולם, למי שלא מכיר (והרבה, כנראה, לא מכירים) הפונקציונאליות הזאת כבר מובנת ב BCL במחלקה System.Drawing.Image. השימוש במתודה הזאת, GetThumbnailImage מאד פשוט. הנה לדוגמא קוד של Console Application שיוצר גרסא מוקטנת לכל התמונות בפורמט jpg שבתיקייה: נעבור שנייה על הקוד הזה (שכפי שאתם רואים, הוא להדגמה בלבד): 1: ... 2: using System.Drawing; 3: using System.IO; 4: ... 5: 6: string dir = @"C:\Users\Public\Pictures...
שאלה : יש לי כתובת URL הנמצאת במשתנה מסוג string. לא מדובר בכתובת URL של העמוד שבו אני נמצא כעת. אני רוצה לנתח את הURL הנמצא במשתנה, ולקבל את אחד מערכי ה query string. הכיצד? תשובה: תכירו את System.Uri. מדובר במחלקה המשמשת לייצוג כתובות (URL, כתובות לוקאליות, כתובות של usenet – הכל). באמצעות System.Uri ניתן לקבל חלק ספיציפי מהכתובת, במקרה שלנו את כל מה שאחרי הסימן שאלה (כולל) עם System.Uri.Query. לאחר מכן, כדי לקבל את הערך של משתנה מסויים, נשתמש במתודה חביבה שנמצאת ב System.Web.HttpUtility ששמה ParseQueryString...
כשאתם כותבים פוסט ב Windows Live Writer ושומרים אותו כ draft או אפילו עושים לו publish, הפוסט נשמר עדיין במחשב שלכם. בד"כ, הוא נשמר בתיקיית המשתמש, אבל גם אם לא, פשוט חפשו קבצים עם הסיומת wlp. אם נמחק לכם פוסט, אתם פשוט צריכים למצוא את הקובץ של הפוסט ולעשות פליש מחדש. עוברים בלוג? פשוט שנו את הבלוג אליו אתם עושים פבליש ותפרסמו לבלוג החדש. ממש בנוחות. כך, גם אפשר לגבות את כל הפוסטים שכתבתם באמצעות התוכנה.
מאמר מצויין שפורסם ב TechNet Magazine בנושא שילוב .NET Framework בקוד Scripting. מומלץ לכולם: http://www.microsoft.com/technet/technetmag/issues/2007/01/HeyScriptingGuy/default.aspx
אני מניח שכולנו מכירים את מסך הפתיחה של Visual Studio: במרכז המסך, יש עדכונים, שמגיעים בRSS כברירת מחדל מMSDN. אבל ברור שMSDN זה כלום ביחס לבלוג שלי (ציניות...), ושאתם תרצו לקבל עדכונים מעניינים מהבלג שלי ולא את המאמרים הללו מהMSDN שמדווחים לכם בעיקר על אירועים ומוצרים חדשים ודברים חדשים להורדה (מדי פעם גם משהו מעניין). הפעולה פשוטה מאד, לכו לתפריט Tools->Options: ברירת המחדל נראית כך (לכו ל Stratup): כל מה שצריכים לעשות, זה למחוק את הכתובת המסומנת (כתובת פיד RSS) ולהחליף בRSS המבוקש שאתם רוצים...
לפני לא מעט זמן, כתבתי הסבר על איך בונים קובץ הגדרת חיפוש Open Search בצורה שתאפשר לאינטרנט אקספלורר 7 ולפיירפוקס לתת למשתמשים לעשות חיפוש מהיר באתר שלך בדפדפן. מי שלא הסתדר עם זה, עכשיו מיקרוסופט השיקו מנגנון שעושה את זה בשבילכם. פשוט מאד. http://www.microsoft.com/windows/ie/searchguide/en... שחר.
אחד החידושים ב Visual Studio 2005, ובגרסא 2 של הפרימוורק, ובגרסא 8 של VB.NET, היה הוספה של דבר חדש ומגניב, שנקרא My Namespace. מדובר למעשה בכלי שמאפשר לגשת בצורה הרבה יותר פשוטה, תוך חיסכון בשורות קוד לפעולות ומאפיינים שבלעדי ה My Namespace היה צריך לעבוד קצת יותר בשביל ליישם אותם. החל מדברים פשוטים כמו קבלת משתני מערכת כאלה ואחרים, וכלה בדברים יותר מורכבים שאיפשרו ביצוע פעולות וגישה לנתונים של המחשב, הרשת, האפליקציה, WebServices ועוד - בקלות רבה מאד. האפשרות הזאת, הופיע בצורה אוטומטית בכל פרוייקט...
מסיבבות השמורות עימם, ועימם בלבד, מיקרוסופט הסירו את כלי העזרה המשולב (ה MSDN, שגם מתעדכן מהאינטרנט), DynamicHelp מסביבת הפיתוח ב VisualStudio.NET 2005. עבור מי שלא אוהב לגלוש ל MSDN כשיש לו בעייה, או לפתוח בחלון נפרד את ה MSDN Library, יש פיתרון פשוט וקל להוספת ה Dynamic Help ל IDE. לכו לתפריט Tools-->Options-->Help, משמה ניתן לשלוט על מאפייני העזרה. בבחירה של המקטע Show Help Using:, תבחרו "Integrated Help Viewer" תאתחלו את הIDE. כנסו ל Help-->Dynamic Help עכשיו, התווסף לכם ה Dynamic Help...