有一种方法可以检查 SqlParameterCollection 的 ReturnValue 参数,如果存在则检查该值是否违反约束。
public static void VerifyUniqueness(this ISqlServerProvider provider,
OperationType operationType, SqlParameterCollection cp)
在这种方法中,我认为首先检查就足够了:
if (cp["@ReturnValue"]==null){return;}
但是如果“@ReturnValue”== null 则会引发异常,所以我想我会使用 Linq:
cp.FirstOrDefault(p => p.ParameterName == "@ReturnValue");
但这甚至不会编译。
“System.Data.SqlClient.SqlParameterCollection”不包含“FirstOrDefault”的定义,并且找不到接受“System.Data.SqlClient.SqlParameterCollection”类型的第一个参数的扩展方法“FirstOrDefault”(您是否缺少 using 指令还是汇编参考?)
System.Linq 被引用,所以不确定发生了什么。