В базе данных у меня есть таблица с именем Contact. Первое имя и другие такие строковые поля предназначены для использования типа данных Char (а не для моей базы данных). Мой объект. Сопоставьте карты с типом строки в свойствах. Если бы я хотел, чтобы сделать простой тест с извлечением Контактного объекта по идентификатору, я хотел бы сделать что-то вроде этого:Как обрезать значения, используя Linq to Sql?
Contact contact = db.Contacts.Single(c => c.Id == myId);
Contact test = new Contact();
test.FirstName = "Martin";
Assert.AreEqual(test.FirstName, contact.FirstName);
Значение contact.FirstName является «Martin» из-за типа полукокса. Где я могу перехватить свойство FirstName при его загрузке? OnFirstNameChanging (строковое значение) не вызывается при начальной загрузке (контакте), а на тестовом объекте.
Это работает. Его довольно легко сделать для каждого поля, потому что я не показываю, что много полей для отображения. Благодарю. – Marsharks
Это будет генерировать событие с измененным свойством, которое может вызвать другие действия, и может привести к ненужным обновлениям базы данных, поскольку вы меняете значение свойства без внесения каких-либо семантических изменений в контент. – tvanfosson
Суть вопроса заключалась в том, чтобы найти место для такой логики (в этом случае OnLoaded()); Сам метод мог бы легко состоять из «_FirstName = _FirstName.Trim();» чтобы избежать неправильной смены события. –