我有一个存储过程返回两个int值.第一个不能为null,但第二个实际上可以返回null值.当我尝试使用LINQ to SQL执行我的存储过程时,它失败并带有以下语句:
无法将null值分配给类型为System.Int32的成员,该类型是非可空值类型.
我试图在我的DBML中更改我的设计器文件并添加: CanBeNull= true
到存储过程结果的列映射.
我似乎可以找出处理这个问题的正确方法,不确定我是否可以更改我的LINQ/C#代码来解释null(这将是更好的选择),或者我是否必须以某种方式更新我的存储过程.
您需要将变量声明为可为空.在设计器中,单击模型中需要可为空的属性,然后在" 属性"窗口中,将"Nullable"属性设置为True.这将告诉生成器创建您的属性Nullable