在 SQL Server 中,我有一个表,其中的列定义为不可为空。
而且我有一个存储过程进行一些连接,因此该字段的结果输出列实际上永远不会为空。
在 EF5 中,我有一个由 EF 自动生成的输出的复杂类型(当我将存储过程添加到模型中时)并且该字段生成为“nullable = false”我猜是因为该列在所有连接中的定义表是“非空”。
现在,在我的解决方案中,我使用存储过程查询数据库并执行联合(仅用于显示,没有“Savechanges”),其中与我联合的表在某些行中该列/字段为 NULL;我遇到了麻烦,因为我得到一个异常,说我的复杂类型不允许 null 。
到目前为止,我的解决方案是手动将复杂类型字段的类型从不可为空更改为可空,但是每次我从模型更新时,我都会恢复我的更改(当然)。
我想有一个更聪明的解决方案,但我看不到它......
任何想法?