У меня проблема с установкой значения по умолчанию для строки с помощью Fluent Nhibernate. У меня есть база данных с полем varchar, которое не является нулевым, и я пытаюсь создать некоторые объекты и затем обновить их до базы данных, однако, поскольку строка может быть нулевой в .Net, у меня возникла проблема при попытке обновить сущность в базу данных.
Я гуглил решение, но пока слово «По умолчанию», по-видимому, встречается во многих смежных темах, поэтому трудно отфильтровать то, что я на самом деле хочу.
Что я хотел бы сделать, так это установить по умолчанию в отображении пустую строку, чтобы вызывающему коду не нужно было знать, что поле базы данных не может быть пустым. Пока что просто установить сопоставление как .Default (string.Empty) не сработало, поэтому я предполагаю, что я делаю это неправильно. Я могу исправить это, добавив вызов конструктора, чтобы установить поле в пустую строку в конструкторе сущностей, но это выглядит довольно неприятно, поэтому я ищу лучший способ сделать это, если он там есть.
Итак, часть кода ...
Entity Property (довольно ванильный):
public virtual string Notes { get; set; }
и отображение:
Map(m => m.Notes).Default(string.Empty).Not.Nullable();
Я также попытался использовать буквальную пустую строку .Default ("") и поместить Not.Nullable () перед значением по умолчанию, и ни один из подходов также не сработал.
В данный момент я собираюсь использовать вызов конструктора, чтобы это не блокировало меня, но я хотел бы найти лучший способ сделать это, если таковой имеется.
Любая помощь с благодарностью.