Razor Page BindProperty сохраняет значения полей, не являющихся полями формы - PullRequest
0 голосов
/ 17 июня 2020

Я новичок в. Net основных страницах Razor, я создал модель со следующими полями

Class MyModel

FirstName - требуется строкового типа

LastName - требуется строкового типа

CreatedDate - Требуется для типа даты - System.Now

ModifiedDate - Требуется для типа даты - использует System.Now

TimeSince - Требуется, но рассчитывается на основе на ModifiedDate, если объект изменен 2 часа go, это поле будет содержать строку с надписью «2 часа go»

В форме Razor у меня есть только 2 поля, FirstName и LastName и в коде за MyModel есть атрибут BindProperty.

Когда я отправляю форму для создания новой записи, в методе публикации я получаю доступ к свойству MyModel, которое дает мне FirstName, LastName, и я устанавливаю ModifiedDate, CrreatedDate и вычисляю TimeSince и вставляю в база данных.

Все работает нормально, но когда я редактирую запись и нажимаю на сообщение в форме, становятся доступны свойства FirstName и LastName и ModifiedDate будет DateTime.Now, но CreatedDate теперь станет 01/01/0001, потому что это поле недоступно в форме.

Как я могу сохранить значения свойств, если они не указаны в форме? Нужно ли мне получать бесплатную sh копию объекта из базы данных в методе post и назначать CreatedDate перед обновлением записи в базе данных?

Еще одна ошибка, которую я получаю при отправке формы, это CreatedDate и ModifiedDate и требуется, и это вызывает ошибку проверки, но на данный момент я отключил проверку.

...