public void WordQueryByTitleUpperCase() { var w1 = session.Load <Word>(IntToGuid <Word>(1)); var res = WordQuery.ByTitle(session)(w1.Title.ToUpper()); Assert.AreEqual(w1, res); }
protected override void OnOk() { foreach (var crit in word.Crits) { var l = OptionsLoader.FromFormat(crit.OptionsFormat); crit.Options = l.ReplaceWord(crit.Options, oldTitle, word.Title); } (word as IEditableObject).EndEdit(); // если такое слово уже было, делааем доступным врачу var toSave = WordQuery.ByTitle(Session)(word.Title) ?? word; AuthorityController.CurrentDoctor.AddWords(toSave.ToEnumerable()); Session.DoSave(toSave); this.Send(Event.EntitySaved, toSave.AsParams(MessageKeys.Entity)); }
/// <summary> /// Делает тексты словаря словами словаря. /// Возвращает созданные слова. /// </summary> /// <param name="voc"></param> private IEnumerable <Word> CreateWordsFromTemp(Vocabulary voc, IEnumerable <WordTemplate> templates) { // для каждого шаблона есть слово Contract.Ensures(templates.Select(x => x.Title.ToLower()) .Except(voc.Words.Select(x => x.Title.ToLower())).Count() == 0); var created = new List <Word>(); foreach (var text in templates.Select(x => x.Title)) { var existing = WordQuery.ByTitle(session)(text); // для любого врача, в любом регистре if (existing == null) { var w = new Word(text); voc.AddWord(w); created.Add(w); } else { voc.AddWord(existing); } } return(created); }