פורסם 2011 בדצמבר 1713 שנים יש לי data base שבניתי:http://imageshack.us/f/259/77878102.png/ אליו אני מכניס נתונים שאני קורא אותם מקובץ טקסט, התחלתי להכניס נתונים קודם לטבלת ה-movies, מכיון שיש קשר בין טבלת ה-movies לבין טבלת ה-categories (נוספה עמודה באופן אוטומטי של categories_id בטבלת ה-movies) לפני שהכנסתי את הסרטים מילאתי את טבלת categories, אחרי זה כשאני מריץ את הקוד שממלא את טבלת הסרטים ולמרות שמילאתי קודם את טבלת ה-categories זה נופל על שגיאה שאומרת:Entities in 'videoLibraryDb.Movies' participate in the 'MoviesCategories' relationship. 0 related 'Categories' were found. 1 'Categories' is expected. static void Main(string[] args) { videoLibraryDb dataBase = new videoLibraryDb(); FileStream MovieCategories = new FileStream("Movies.txt", FileMode.Open, FileAccess.Read); StreamReader srMovieCategories = new StreamReader(MovieCategories); using (srMovieCategories) { while (!srMovieCategories.EndOfStream) //add to categories table { string cLine = srMovieCategories.ReadLine(); string[] cLineArr = cLine.Split(','); Categories movieCategory = Categories.CreateCategories(0, ((MovieType)int.Parse(cLineArr[2])).ToString()); dataBase.AddToCategories(movieCategory); dataBase.SaveChanges(); } } FileStream movies = new FileStream("Movies.txt", FileMode.Open, FileAccess.Read); StreamReader srMovies = new StreamReader(movies); using (srMovies) { while (!srMovies.EndOfStream) //add to movies table { string line = srMovies.ReadLine(); string[] lineArr = line.Split(','); Movies movie = Movies.CreateMovies(lineArr[0], lineArr[1], int.Parse(lineArr[3])); dataBase.AddToMovies(movie); dataBase.SaveChanges(); } } Console.ReadLine(); }
פורסם 2011 בדצמבר 1813 שנים נראה לי שהבעיה היא בזמן יצירת הקטגוריות.השורה שאמורה להוסיף קטגוריה חדשה לא ברורה לי 1) למה למתודה קוראים CreateCategories כלומר "יצירת קטגוריות" ברבים? ברור שאתה יוצר מופע חדש של קטגוריה אחת...2) הארגומנט הראשון למתודה הנ"ל הוא קבוע "0" - לא היה אמור להיות מספר זיהוי הקטגוריה? כלומר משהו כמו (MovieType)int.Parse(cLineArr[2])ועוד דבר - שים לב שעשית קישור בין Movies ו Rents ז"א שהוא יחייב אותך גם לתת מענה לקישור הזה בזמן טעינת הסרטיםאתה רוצה שהקישור יהיה אופציונאלי (ז"א אחד לאפס או יותר)
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.