将String.Empty发送到存储过程

gui*_*gui 4 c# sql sql-server string stored-procedures

考虑这个例子:

MyParameters.Name = "Paul";
MyParameters.Nickname = String.Empty;

ExecuteStoredProcedure(MyStoredProcedure, MyParameters);
Run Code Online (Sandbox Code Playgroud)

当我的存储过程执行时,它会运行这样的东西?

MyStoredProcedure 'Paul',''
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是:C# String.Empty等于Database ''

PS.:我正在使用SQL Server

Mik*_*oud 5

是的,空字符串作为空字符串发送.请参阅,值已按预期转换和发送.例如,如果您需要发送,null那么您将设置Nickname如下:

MyParameters.Nickname = null;
Run Code Online (Sandbox Code Playgroud)

您的代码也相当于:

MyParameters.Nickname = "";
Run Code Online (Sandbox Code Playgroud)

  • "null"的行为是否完全取决于数据访问工具的内容 (2认同)