W bazie danych mam tabelę o nazwie Kontakt. Pierwsza nazwa i inne takie pola ciągów są zaprojektowane do używania typu danych Char (nie mojego projektu bazy danych). Mój obiekt Kontaktuje mapy z typem ciągu we właściwościach. Gdybym chciał zrobić prosty test pobierania obiektu kontaktu przez ID, chciałbym zrobić coś takiego:Jak przyciąć wartości za pomocą Linq do Sql?
Contact contact = db.Contacts.Single(c => c.Id == myId);
Contact test = new Contact();
test.FirstName = "Martin";
Assert.AreEqual(test.FirstName, contact.FirstName);
Wartość contact.FirstName jest „Martin” ze względu na typ char. Gdzie mogę przechwycić właściwość FirstName podczas ładowania? OnFirstNameChanging (wartość ciągu) nie jest wywoływana podczas początkowego obciążenia (kontaktu), ale działa na obiekcie testowym.
To działa. Jest to dość łatwe do zrobienia dla każdego pola, ponieważ nie pokazuję wielu pól do wyświetlenia. Dzięki. – Marsharks
Spowoduje to wygenerowanie zdarzenia zmiany właściwości - które może wywołać inne działania - i może spowodować niepotrzebne aktualizacje bazy danych, ponieważ zmienia się wartość właściwości bez wprowadzania jakichkolwiek zmian semantycznych w treści. – tvanfosson
Punktem pytania było znalezienie miejsca na taką logikę (w tym przypadku OnLoaded()); Sama metoda może równie dobrze składać się z "_FirstName = _FirstName.Trim();" aby uniknąć sytuacji, w której propozycja zmieniła strzelanie. –