ASP.NET WebMatrix ו- ASP.NET Web Pages בכפית של זהב

Wednesday, July 7, 2010

מיקרוסופט הודיעה היום על השקת ASP.NET WebMatrix – סביבת פיתוח וריצה חדשה לאתרי אינטרנט. כמובן שיש מ-ל-א פוסטים בנושא, והמטרה בפוסט הזה היא לסכם את הנקודות העיקריות במקום אחד ובנוחות. ASP.NET WebMatrix הוא מוצר די גדול, שמורכב משני חלקים עיקריים: החלק הראשון, הוא סביבת הריצה עצמה. החלק השני, הוא סביבת הפיתוח (שאמנם מומלצת לשימוש, אבל לא חובה לשימוש). סביבת הריצה של ASP.NET WebMatrix סביבת הריצה של ASP.NET WebMatrix מורכבת ממספר חלקים עיקריים: ASP.NET Web Pages דרך חדשה לפיתוח אפליקציות ASP.NET ששונה משמעותית מ ASP.NET WebForms הוותיקה וגם מ ASP.NET MVC הצעירה. מדובר בפיתוח...
תגיות: , , ,
תגובה אחת

לייצא טבלאות מה DB, כולל סכמה ונתונים מהאפליקציה באמצעות SMO

Tuesday, March 2, 2010

מה זה 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

Wednesday, September 30, 2009

בפוסט הקודם הצגתי את 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 האפליקציה גם מתייחסת ל relationships בין entities שונים. כלומר, אם במודל מוגדר של entityיש...

פרסום: אפליקציית קוד פתוח קטנה ושימושית ליצירת Data Transfer Objects באופן אוטומטי על בסיס LINQ to SQL Data Classes

Tuesday, September 22, 2009

הקדמה באחד הפוסטים הקודמים כתבתי על Data Transfer Objects והשימוש בהם לעבודה נכונה ונוחה עם LINQ to SQL ו- ADO.NET Entity Framework. בין התגובות שקיבלתי בפורום “תכנות .NET” בתפוז שבתגובה לשאלה שעלתה בו פורסם הפוסט, עלה העניין שלמרות שמדובר בכתיבה יותר נוחה, היא דורשת למעשה עבודה כפולה בהתחלה, וגם ציינתי זאת בפוסט. כשמתחילים לכתוב, יש צורך לכתוב DTO נפרד לכל אחת מהישויות עם תחילת העבודה, וגם בד”כ לכתוב מתודות שמבצעות העברה בין הDTO לאובייקט שנמצא ב DAL (האובייקט שמופה ע”י הORM) ולהיפך – לכתוב מתודה שמחזירה את...
2 תגובות

טיפ קצר: גישה ל Controls הנמצאים ב FooterTemplate של Repeater

Wednesday, September 16, 2009

בעקבות שאלה שקיבלתי, כמה מילים על FooterTemplate ב Repeater: ה FooterTemplate מאפשר לקבוע תבנית עיצובית שתופיע בתחתית ה Repeater לאחר כל ה DataBound Items. ניתן, כמובן, כמו כל מקום, לשלב שם כל Control שאתם רוצים. וכעת, לשאלה – איך ניגשים אליהם בלי להשתמש באף אחד מה events של ה Repeater? קצת מגושם, לא מורכב. בדוגמא הזאת, נניח של Repeater קוראים rpSample, ל control שאחנו מחפשים קוראים calDate והוא מהסוג Calendar. ככה הקוד ייראה:   ...
תגיות: , ,
אין תגובות

צ’אט אחד על אחד מבוסס ASP.NET Caching

Thursday, August 20, 2009

במסגרת העבודה שלי בסטארטאפסידס, פיתחתי לאחרונה צ’אט אחד על אחד (סגנון gmail, פייסבוק וכו’) המאפשר לרשומים באתר לשוחח אחד עם השני. מי שמכיר את הדוגמאות שנמצאות באינטרנט, בד”כ הנושא ממומש באמצעות שימוש כלשהו ב database, דבר שבאפליקציה שלנו היה בלתי אפשרי, ולכן החלטתי להשתמש במנגנון ה caching של ASP.NET. כתבתי באתר סטארטאפסידס מאמר קצר על מאחורי הקלעים של סידס צ’אט. אתם מוזמנים לקרוא. שחר.
תגיות: ,
4 תגובות

איך למנוע אפשרות להרצת קבצי ASP ו-ASP.NET בתיקייה מסויימת?

Saturday, March 15, 2008

לעיתים, נרצה למנוע, כמו שלמדתי על בשרי, אפשרות להרצת קבצי ASP או ASP.NET מתיקייה מסויימת. בשביל לבצע זאת, צריך ללכת לפי ההוראות האלה (עבור IIS 6): כנסו לinetmgr לכו למאפייני ה folder שבו אתם רוצים לחסום. ב Execute Premission שנו ל None. עכשיו, אין אפשרות להריץ ASP ו-CGI. לחצו על הכפתור Create. לחצו על הכפתור Configuration. בחלון שייפתח, בחלק של Wildcard Application Maps מחקו את המיפוי ל aspnet_isapi.dll.         ...
תגיות: ,
תגובה אחת

הדרך הקצרה ליצור שכבת לוגיקה עסקית מבוססת על LINQ to SQL

Tuesday, February 12, 2008

LINQ to SQL זה שמה של טכנולוגיית גישת-הנתונים החדשה של מיקרוסופט. מי שלא מכיר, יכול לצפות ב webcasts שהקלטתי עליה בעבר (1 2). אם צריך לסכם את LINQ to SQL בשלושה מילים, ובהגדרה הכי כללית שאפשר, אלה יהיו קרוב לוודאי Data Access Layer. כלומר, שכבת העבודה עם נתונים של האפליקציה. מעל השכבה הזאת, צריכה לבוא שכבת הלוגיקה העסקית. לעיתים, באפליקציות שאין הרבה לוגיקה עסקית, עיקר הלוגיקה מהווה למעשה ה DAL. במצב כזה, עיקר הלוגיקה יהיה וואלידציה של הנתונים שנכנסים ויוצאים, ואולי תוספת מועטה של פונקציונאליות. במצב כזה, הדרך הכי קצרה ליצור...
תגיות: ,
2 תגובות

MediaPlayer – ASP.NET 3.5 Extension

Wednesday, January 2, 2008

חלק מה controls החדשים שמגיעים במסגרת חבילת ASP.NET 3.5 Extension, יש control בשם MediaPlayer. המטרה שלו, לספק פיתרון לבעייה שדי מציקה למפתחי WEB - איך להציג וידאו ומדיה באתר שלהם. מצד אחד, יש את אלה שפשוט משתמשים ב COM של Windows Media Player, מה שישר מונע מכל מי שלא משתמש ב windows ושאין לו תמיכה ב ActiveX "לאכול אותה". אמנם יש כל מיני פתרונות, אבל זה לא לעניין לשלוח את המשתמשים להתקין כל מיני תוספים שאמורים, איכשהו, לספק תאימות לCOM הזה. הפיתרון הסביר היה, לכן, שימוש באיזשהו נגן פלאש, מתוך הנחה שהוא נתמך ברוב המקומות....
3 תגובות

Dynamic Data החדש

Friday, December 14, 2007

כחלק מ December CTP של ASP.NET 3.5 Extensions ניתן למצוא גם את Dynamic Data עליו כבר כתבתי פוסט בעבר. השיפורים שהוא עבר בגרסא הנוכחית, ניכרים בהחלט לעומת הגרסאות הקודמות של ASP.NET Future. בעוד שבגרסאות קודמות, לא ממש היה ברור מי נגד מי, לא היית יכול לערוך דברים דיפולטיים ובכלל - כל חריגה ולא הטריוויאלית ביותר הייתה כרוכה בבאמת יותר מדי התעסקות, הגרסא הנוכחית היא הרבה יותר "לוגית". הרבה יותר ברור איפה נמצא מה, מי נגד מי - וזה עוד לפני שנכנסנו לשיפורים הרבים שהוטמעו בה. השילוב של OR/M של LINQ to SQL, יוצר גם הרבה יותר...
אין תגובות