אתה חיפשת? ניסית את AdBlock?
פורסם במקור בפורום CODE613 ב26/03/2014 17:01 (+02:00)
אתה חיפשת? ניסית את AdBlock?
פורסם במקור בפורום CODE613 ב26/03/2014 17:01 (+02:00)
בקשר לחסימה יש עשרות תוספים שעושים זאת.
בקשר לפיתוח תוספים, זה די פשוט אבל אני מעולם לא עשיתי.
קישורים:
http://developer.chrome.com/extensions/getstarted
https://developers.google.com/chrome/web-store/docs/get_started_simple
http://www.jefvlamings.com/blog/chrome-extensions-for-dummies/
פורסם במקור בפורום CODE613 ב26/03/2014 16:00 (+02:00)
אז בא אתאר איפה אני אוחז:
הורדתי והתקנתי את הגירסה האחרונה של EF (זמין או בתוספים או בהורדה נפרדת).
פתחתי פרוייקט (לא Console אלא Wpf, העדפה אישית).
קליק ימני על הפרוייקט Add... אח"כ New Item... ובחרתי בADO.NET Entity Data Model.
הוא יוצר כמה דברים אוטומטית שעדיין לא עמדתי על טיבם (כמה שmagicode לא אוהב כאלו דברים!).
בין היתר הוא יצר דף חדש בשם Model1. מחקתי בו הכל והתחלתי לכתוב:
(הדוגמאות בVB, כי בה אני כותב, מי שרוצה תרגום של קטע לא ברור שיבקש ואתרגם בשמחה).
Public Class Model
Inherits DbContext
Public Property Tormim As DbSet(Of Torem)
End Class
Public Class Torem
Public Property Name As String
End Class
פשוט מאוד, נכון?
עוד קוד קטן בשגרת לחיצה של כפתור בחלון WPF:
Dim m As New Model()
m.Tormim.Add(New Torem() With {.Name = "fsdfdsfsdf", .idt = Now.Millisecond})
m.SaveChanges()
הרצה ואופ. שגיאה. צריך מפתח לכל ישות. ובמחלקה שלי? אין.
איך מגדירים במחלקת Torem מפתח ראשי? טוב אז בדוגמאות ברשת ראיתי שלא מגדירם ובכל אופן עובד להם. נו, אז חיקיתי את הדוגמה שלהם, בה יש מאפיין בשם id, והמנגנון של הEF מזהה לפי שמו שמטרתו לשמש כמפתח ראשי. נסיתי לשנות לככה:
Public Class Torem
Public Property id As Integer
Public Property Name As String
End Class
עובד! כמה נחמד שהוא מבין לבד (מצד אחד לא כ"כ, אהה?). ומה אם אני רוצה ששם מאפיין המפתח יהיה שונה מid? או שיהיה מרובה שדות? או שיהיה שדה בשם id שלא משמשת כמפתח? אז בדקתי ברשת ומשתמשים בAttribut שונים למקרים כאלו ואחרים. לדוגמה, ככה יעבוד:
Public Class Torem
<System.ComponentModel.DataAnnotations.Key>
Public Property MafteahRashi As Integer
Public Property Name As String
End Class
אז מה אם זה עבד? איפה הוא שמר את העסק בכלל? טוב אז מחרוזת החיבור הדיפולטית היא זו:
Data Source=(localdb)\v11.0;Initial Catalog=Entity.Model;Integrated Security=True;MultipleActiveResultSets=True
ועוד לפני שממש קראתי מה כתוב בה החלטתי שאני לא ילד שמחליטים בשבילו, ואני רוצה לשים מחרוזת משלי.
קצת בדקתי בעזרה, רחרחתי בApp.Config ומצאתי את המחרוזת. שיניתי אותה חגיגית, והרצתי שוב. הכל עבד, אבל כשפתחתי את המסד שלי, זה שציינתי במחרוזת, לא היה שם כלום.
קצת היה מעצבן, ואז הבנתי, האלמנט בXML ששמו App.Config נראה ככה:
<add name="Model1" connectionString="Data Source=Dovid1-pc;Initial Catalog=MyTests;Integrated Security=True" providerName="System.Data.SqlClient" />
וזה נוצר אוטומטית בשלב 4. האריביוט Name התאים (אז...) לשם המחלקה שהוא יצר: Model1 אך אני קראתי למחלקה שלי Model. אז מבחינתו לא היה קונקשיין סטרינג מתאים אז הוא לקח (לא יודע מאיפה) את המחרוזת הרירת מחדל הזו. כששיניתי את האטריביוט Name לModel הכל הסתדר, ב"ה.
טוב, התעייפתי. המשך יבוא...
פורסם במקור בפורום CODE613 ב26/03/2014 15:52 (+02:00)
שיש פורום אחד שאני נמצא שם הרבה וכשיש שאלה על אנטיטי אני :twisted: :oops: :evil: 
בנוסף, ברצינות, אני יותר ויותר שומע על זה הבטחות.
נו, נראה אם אני מצליח או מתייאש.
גם בWPF לקח לי עשרות נסיונות נפל להיכנס שלא עלו בהצלחה עד שכעת אני לא זוכר אופציה אחרת.
פורסם במקור בפורום CODE613 ב25/03/2014 20:42 (+02:00)
אני מרחרח שוב (פעם חמישים וכמה :)) סביב העסק הזה...
כעת אני הולך על Code First. בדרך זו (בשונה ממודל פירסט/דטה בייס פירסט), אין כלום חוץ מקוד שלי (אין קבצי XML וסכמות ומיפוי וקונקשיין סטרינג לא קריא...)
מה אני רוצה ממכם? איחולי הצלחה 
פורסם במקור בפורום CODE613 ב25/03/2014 20:24 (+02:00)
פורסם במקור בפורום CODE613 ב25/03/2014 17:41 (+02:00)
בסוף המתודה תכתוב
e.handled = True
זה גורם לכך שאירוע הגלילה לא יישלח הלאה.
זה מאפיין שמופיע בכל אירועי הPreview כלומר אירועי קדם האירוע שמאפשרים לנטרל אותו.
פורסם במקור בפורום CODE613 ב23/03/2014 13:02 (+02:00)
תודה על הפתרון.
אני מצפה שבאופן אוטומטי כאשר יש רק פס גלילה אחד, אופקי או אנכי, גלגול העכבר יזיז אותו. כשיש שני פסי גלילה אז יזוז הפס האנכי בלבד. אבל כנראה השאירו לנו קצת עבודה
לא בשביל להשאיר לך עבודה אלא בגלל שזה פונקציונליות לא מתבקשת במקרים רגילים.
פורסם במקור בפורום CODE613 ב23/03/2014 12:50 (+02:00)
משהו כזה:
sv.ScrollToHorizontalOffset(sv.HorizontalOffset - e.Delta)
פורסם במקור בפורום CODE613 ב23/03/2014 12:47 (+02:00)
אתה מצפה שהגלילה של העכבר תזיז אופקית.
זה לא משהו מובן מאליו. כמה תוכנות אתה מכיר שעושים את ההתנהגות הזאת?
אגב מה תרצה כאשר ישנם שני פסי גלילה (כמו במקרה שלך! במידה ואלמנט מסויים יחרוג בגובה) מה תבצע גלילת העכבר?
בכל אופן אתמקד בפיתרון בעיה בניסוח זה: "איך לשייך את גלגלת העכבר לגלילה האופקית".
אז אין אופציה מובנית. צריך ללכוד את אירוע הגלילה (PreviewMouseWheel) ו"להזיז".
פורסם במקור בפורום CODE613 ב23/03/2014 12:02 (+02:00)
נכון, גם לי זכור הדיאלוג הזה.
במקומו: קליק ימני על הפרוייקט Add... אח"כ Add Existing Item... ובתיבת דו שיח בחר את התמונה והוסף אותה.
אח"כ היא תופיע ברשימה נפתחת במאפיין הSource.
הערות:
פורסם במקור בפורום CODE613 ב23/03/2014 09:46 (+02:00)
התוכנה LINQPad במקורה עשוייה לבדוק ביטויי LINQ וכו'.
אבל בתכלס זה תוכנה נוחה להרצת קטעי קוד לבדיקה, בלי לפתוח פרוייקט וכדו'. בנוסף היא תומכת במשפטים בודדים או בפונקציות שלמות, ובשפות C# וגם VB.NET וF#.
אפשר להוריד דוגמאות קוד ולהריץ, בקיצור ממש נחמד.
לא צריך שיהיה במחשב מתוקן שום דבר מלבד הנט פרימוורק.
אתר הבית: https://www.linqpad.net/
הורדה: https://www.linqpad.net/GetFile.aspx?LINQPad4Setup.exe
דרופבוקס: https://dl.dropboxusercontent.com/u/22591610/LINQPad4Setup.exe
פורסם במקור בפורום CODE613 ב20/03/2014 19:02 (+02:00)
הSettings זה אפשרות שמירת מידע בסיסי בדיסק הקשיח, עם אפשרות לשנותם בזמן ריצה או ידנית.
איך יוצרים Setting מסויים? בVS בחלון הSolution Explorer לפתוח את הצומת Properties ואז דבל קליק על Setting.
שם ממלאים את שורה חדשה, העמודות הם:
Name - זה שם כמו של משתנה בקוד
Type - זה סוג המידע לשמירה, יכול להיות int וכו' או מחלקה של ממש (כמדומה לי בתנאי שיש לו בנאי מסטרינג).
Scope - אם רוצים לשנות את ההגדרה בזמן ריצה, צריך לבחור בUser ואז זה נשמר ברמת משתמש.
Value - ערך ברירת מחדל.
איפה העסק נשמר? בעיקרון, נוצר קובץ בתיקיית היעד של האפליקציה, עם שם זהה לשמה בתוספת סיומת config ככה למשל: MyApp.exe.Config. הגדרות ברמת אפליקציה (או הגדרות User כשעדיין לא בוצעה שמירה שלהם) נקראות מקובץ זה.
מה קורה אם מוחקים את הקובץ או לא מספקים אותו למחשב היעד? כלום. כי ההגדרות הברירות מחדל צרובות גם בתוכנה, ובמידה ואין את הקובץ החיצוני הם נקראות מתוכה.
שמירת ההגדרות בעת ריצה, כותבת קובץ חדש בתיקיית פרופיל המשתמש.
הצורה לקריאה מSetting היא כזו:
var xxx = Properties.Settings.Default.XXX;
הXXX זה השם של ההגדרה כפי שנקבעה בעמודה Name.
אם משנים את ההגדרה ורוצים שהיא תישמר יש לפרש זאת ע"י המתודה Save:
Properties.Settings.Default.XXX = SomeValue;
Properties.Settings.Default.Save();
פורסם במקור בפורום CODE613 ב20/03/2014 15:30 (+02:00)
תשתמש עם DataTrigger. תאגוד את הBinding לשדה המספרי הזה, ובעת שהValue="0" תחיל את הIsEnable לשלילי.
פורסם במקור בפורום CODE613 ב19/03/2014 13:52 (+02:00)
שים BreakPoint בקונוורטר.
תראה איפה זה קופץ.
פורסם במקור בפורום CODE613 ב12/03/2014 15:36 (+02:00)
שמואל, לא נולדת אתמול, ועד היום ההגדרה עבדה לך יפה, לא רק בזמן עיצוב. נכון?
אז נסה להבין מה שונה במקרה זה.
פורסם במקור בפורום CODE613 ב13/03/2014 11:30 (+02:00)
זה בC#, זה מטפל גם בהעדר שם מסויים.
string SafeJoin(string a, string other, String separator)
{
if(string.IsNullOrWhiteSpace(a) || string.IsNullOrWhiteSpace(other))
separator = null;
return string.Concat(a, separator, other);
}
string CombinNames(string firstName, string lastName, string firstNameWomen, string lastNameWomen)
{
string men = SafeJoin(firstName, lastName, " ");
string women = lastNameWomen == lastName ? firstNameWomen : SafeJoin(firstNameWomen, lastNameWomen, " ");
return SafeJoin(men, women, " ו");
}
פורסם במקור בפורום CODE613 ב12/03/2014 15:28 (+02:00)
ארכיטקט, null זה אכן חור שחור, אני לא ממש יודע למה, אבל הוא מהווה עיקרון חשוב במסד נתונים ("מידע חסר" - ראה http://en.wikipedia.org/wiki/Null_(SQL).
אבל אתה כמעצב המסד יכול למנוע null וגם לתת ערך ברירת מחדל.
בקשר למקרה הספציפי, אתה מידי מצמצם. איך זה שאתה מחפש לפי משתנה ולפעמים אתה שם בו Null?
וגם בקוד שלך הארכת ונהגת כבתנאי בני גד וראובן, היה לך די לכתוב ככה:
select * from Documents d where (d.ContactID is null and @null is null) or d.ContactID = @null
פורסם במקור בפורום CODE613 ב12/03/2014 11:50 (+02:00)
כן אני מעוניין. אני אבוא גם אם זה לא הכי יסתדר, כשמדובר בתכנות 
מקום: לא משנה כ"כ עדיפות למול הבית שלי (אולי זה בדיוק הבניין של מישהו פה?)
נושאים רצויים תכנות :), בנושאם הבוערים של מוסדות וכדו'.
פורסם במקור בפורום CODE613 ב10/03/2014 18:17 (+02:00)
זה אכן הולך חזק עם MVVM אבל אתה יכול ליישם את זה בלי להיות עקבי ולהיות MVVMניק :).
זה מאוד מתאים למקרים של פקודה מקושרת למופע כל שהוא.
פורסם במקור בפורום CODE613 ב09/03/2014 21:22 (+02:00)