Испытав это на странице динамического списка данных ASP.NET и учитывая, что, по-видимому, существует ошибка с внешними ключами varchar (я считаю, что это принято Microsoft), любое решение будет чем-то вроде обходного пути (хак).
Чтобы обойти нулевые значения для столбцов таблицы со значениями по умолчанию (например, madeDate, CreatedBy и т. Д.), Я в итоге установил значения по умолчанию в конструкторе частичного класса для соответствующей сущности.
После того, как приведенная выше информация дала понять, что загружены только столбцы, необходимые для уникальной идентификации объекта, я обнаружил, что добавление другого значения «по умолчанию» для столбца проблемы (внешнего ключа) устранило мою проблему - то есть, потому что я не есть ли каскадное удаление или что-то еще, первичного ключа объекта достаточно, чтобы выполнить удаление, и это другая обработка, которая проверяет нулевые значения во внешнем ключе (varchar) - поэтому я просто устанавливаю для этого столбца значение String.Empty в и значение по умолчанию, которое я установил, игнорируется ...
, например
public partial class MyEntity
{
public MyEntity()
{
CreatedDate = Datetime.Now;
//Other default stuff
MyProblemVarcharForeignKeyField = String.Empty;
}
}
и вуаля!