public static bool AddWordToLesson(Model.Word word, string courseId, string lessonName) { try { ObjectId id = new ObjectId(courseId); var modelWord = Word.RemoveId(word); var dataProvider = new MongoDataProvider(); var db = dataProvider.GetDatabase(); var collection = db.GetCollection <Course>("Course"); var filter = Builders <Course> .Filter.And( Builders <Course> .Filter.Where(c => c._id == id), Builders <Course> .Filter.ElemMatch(c => c.Lessons, l => l.Name == lessonName)); var update = Builders <Course> .Update.AddToSet(c => c.Lessons[-1].Words, modelWord); var result = collection.UpdateOne(filter, update); if (result.ModifiedCount == 1) { return(true); } else { return(false); } } catch (Exception) { return(false); } }
public static Model.Word RemoveId(Model.Word word) { Model.Word newWord = new Model.Word(); newWord.JishoURL = word.JishoURL; newWord.Kana = word.Kana; newWord.Kanji = word.Kanji; newWord.Level = word.Level; newWord.Meaning = word.Meaning; return(newWord); }
public static bool AddWordToLesson(string courseId, string lessonName, Model.Word word) { try { return(DAL.Lesson.AddWordToLesson(word, courseId, lessonName)); } catch (Exception) { return(false); } }