שחר.נט

שלי...

בלוגים שאני קורא

ספרים מומלצים

Browse by Tags

All Tags » C# (RSS)
לייצא טבלאות מה DB, כולל סכמה ונתונים מהאפליקציה באמצעות SMO
מה זה SMO? SMO, ר”ת של SQL Server Management Object, זה אוסך של אובייקטים החושפים פונקציונאליות של ניהול שרת SQL Server על רכיביו השונים ובכל הרמות (ניהול שרת, ניהול דטאבייסים, ניהול הרכיבים בדטאבייס מסויים וכו’). מדובר, למעשה, במקבילה דוט.נט-ית לרכיב שידוע בשם SQL-DMO (עוד ד”ת - SQL Distributed Management Objects). האסמבליס (קבצי הDLL) של SMO נמצאים בנתיב C:\Program Files\Microsoft SQL Server\100\SDK\Assemblies\Microsoft.SqlServer.Smo.dll (מדובר בקבצים של SQL SERVER 2008, כאשר c:\Program Files זה...
גרסא חדשה: DTOGenerator – מחולל קוד המייצר Data Transfer Objects על בסיס LINQ to SQL Data Classes ו ADO.NET Entity Framework Model
בפוסט הקודם הצגתי את LINQ2DQLDTOCreator , אפליקציה קטנה שמייצרת Data Transfer Objects על בסיס LINQ to SQL Data Classes. היום ביצעתי קצת שיפורים באפליקציה והרחבתי אותה כך שהיא תייצר DTO’s גם ממודל של ADO.NET Entity Framework . האפליקציה הנוכחית כוללת את כל היכולות של האפליקציה הקודמת. כלומר, עדיין ניתן לייצר DTO’s על בסיס LINQ to SQL Data Classes. אבל, עכשיו האפליקציה גם תייצר DTO’s על בסיס entities, כלומר מחלקות עם EdmEntityTypeAttribute. בנוסף, כאשר עובדים מול ADO.NET Entity Framework האפליקציה...
פרסום: אפליקציית קוד פתוח קטנה ושימושית ליצירת Data Transfer Objects באופן אוטומטי על בסיס LINQ to SQL Data Classes
הקדמה באחד הפוסטים הקודמים כתבתי על Data Transfer Objects והשימוש בהם לעבודה נכונה ונוחה עם LINQ to SQL ו- ADO.NET Entity Framework. בין התגובות שקיבלתי בפורום “תכנות .NET” בתפוז שבתגובה לשאלה שעלתה בו פורסם הפוסט, עלה העניין שלמרות שמדובר בכתיבה יותר נוחה, היא דורשת למעשה עבודה כפולה בהתחלה, וגם ציינתי זאת בפוסט. כשמתחילים לכתוב, יש צורך לכתוב DTO נפרד לכל אחת מהישויות עם תחילת העבודה, וגם בד”כ לכתוב מתודות שמבצעות העברה בין הDTO לאובייקט שנמצא ב DAL (האובייקט שמופה ע”י הORM) ולהיפך – לכתוב מתודה...
יצירת Thumbnail (צלמיות) בקלות
אם רוצים ליצור צלמית של תמונה (גרסא מוקטנת שלה), ניתן כמובן לחתוך אותה באופן ידני. אולם, למי שלא מכיר (והרבה, כנראה, לא מכירים) הפונקציונאליות הזאת כבר מובנת ב 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...
איך לקבל ערכים מ Query String של URL שנמצא במשתנה string?
שאלה : יש לי כתובת URL הנמצאת במשתנה מסוג string. לא מדובר בכתובת URL של העמוד שבו אני נמצא כעת. אני רוצה לנתח את הURL הנמצא במשתנה, ולקבל את אחד מערכי ה query string. הכיצד? תשובה: תכירו את System.Uri. מדובר במחלקה המשמשת לייצוג כתובות (URL, כתובות לוקאליות, כתובות של usenet – הכל). באמצעות System.Uri ניתן לקבל חלק ספיציפי מהכתובת, במקרה שלנו את כל מה שאחרי הסימן שאלה (כולל) עם System.Uri.Query. לאחר מכן, כדי לקבל את הערך של משתנה מסויים, נשתמש במתודה חביבה שנמצאת ב System.Web.HttpUtility ששמה ParseQueryString...
תשובה לשאלה בפורום: תשאול WMI מתוך .NET
בפורום תכנות .net בתפוז, התפרסמה השאלה הבאה: שלום! אני עובד עם VB.NET אני מנסה לחשוב על דרך שבה תוכנה שתותקן על מחשב תוכל לשרת את אותו מחשב. עלה לי רעיון שאם יש איזה מידע שיחודי לאותו מחשב, ישמר בזיכרון התוכנה והיא תפעל רק אם היא מזהה את המידע הזה. לפי דעתי האופציה הכי טובה זה מידע על החומרה. האם זאת אופציה ברת יישום? האם המידע הזה (לדוגמה סוג המעבד/לוח אם וכ') נגיש לזיהוי על ידי התוכנה? תודה מראש כפי שניתן להבין, השואל מחפש מידע שייחודי למחשב. המידע הייחודי למחשב, בד"כ יהיה המספר הסריאלי...
operators שימושיים בLINQ ומשמעותם
בפוסט זה, אני רוצה להביא כמה אופרטורים פחות מוכרים, אבל שימושיים בLINQ, שיכולים להיות בדיוק אלה שיפתרו לכם בעייה מסויימת ומה תפקידם בעולם. Skip האופרטור Skip מאפשר לדלק על מספר מסויים של פריטים ב collection, ולהחזיר רק את אלה שלאחר מכן. הנה דוגמאת שימוש: 1: var nums = new [] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; 2: var results = from p in nums.Skip< int >(3) 3: select p; 4: foreach (var item in results) 5: { 6: Console.WriteLine(item); 7: } 8: Console.Read(); .csharpcode, .csharpcode pre { font-size...
WebCast בנושא LINQ to SQL
הקלטתי WebCast בנושא LINQ to SQL, שיטת ניהול-שכבת נתונים החדשה של מיקרוסופט. אורך ה webcast הוא כחצי שעה, והמטרה שלו זה לכסות את הנושאים העיקריים בעבודה היום-יומית עם LINQ to SQL: DataContext LINQ Anonymous Types שליפת מידע הוספת מידע עדכון מידע מידע בצורת אובייקטים וגם, קצת מאחורי הקלעים של LINQ to SQL, מה נוצר ומה קורה מאחור. מדובר בחצי-שעה שהמטרה שלה להקנות את הבסיס לשימוש ב LINQ to SQL. להורדת ה WebCast לחץ כאן בהצלחה.
VB.NET & C# Usergroup אתמול
אתמול, בגלל שהייתה שביתה, החלטתי שאני אלך ל Usergroup של Windows Clients להרצאה של אור צמח בנושא Windows Vista. היות שהקדמתי, הלכתי לבקר את ליאור צורף שכמובן, צילם את הביקור . לפחות את חלקו. אחרי זה, הלכתי ללובי של קומה 0 להרצאה על ויסטה, אבל פתאום ראיתי שאת האנשים שהגיעו להרצאה על ויסטה אני לא ממש רואה, ושמעתי שיש פגישה מיוחדת של קבוצת VB וC# לרגל הגיעו ענבר גזית וליסה פייגנבאום לארץ הקודש. ענבר גזית גם דובר עברית וגם העביר את סבב השו"ת שלו בעברית. הוא התמקד בשאלות על הBCL, הציג בקצרה את השיפורים...
מדריך מצויין לC#
מכידוע לכולנו, C# היא תקן. תקן הידוע בתור ECMA-334, ולמעשה, התקן כולל את כל ה Syntax של C#, היכולות שלה, הסברים על כל סוגי האפשרויות - למעשה, המטרה שעפ"י מסמך התקן כל אחד יוכל לבנות קומפיילר לC# ולהבין את ה Syntax שלה בצורה שמכסה את כל האפשרויות. היות והתקן מאד מפורט , לעיתים עד טרחנות (553 עמודים, למי שמתעניין), הוא מהווה ללא ספק תיאור מושלם של C# וה Syntax שלה, וכולל דוגמאות קוד רבות והסברים רבים עוד יותר. מדובר, למעשה, בספר הדרכה לC#, אולי לא כזה שיתאים למי שפוגש פעם ראשונה את השפה, אבל מתאים...
שימוש ב My Namespace ב C#
אחד החידושים ב Visual Studio 2005, ובגרסא 2 של הפרימוורק, ובגרסא 8 של VB.NET, היה הוספה של דבר חדש ומגניב, שנקרא My Namespace. מדובר למעשה בכלי שמאפשר לגשת בצורה הרבה יותר פשוטה, תוך חיסכון בשורות קוד לפעולות ומאפיינים שבלעדי ה My Namespace היה צריך לעבוד קצת יותר בשביל ליישם אותם. החל מדברים פשוטים כמו קבלת משתני מערכת כאלה ואחרים, וכלה בדברים יותר מורכבים שאיפשרו ביצוע פעולות וגישה לנתונים של המחשב, הרשת, האפליקציה, WebServices ועוד - בקלות רבה מאד. האפשרות הזאת, הופיע בצורה אוטומטית בכל פרוייקט...