[问题记录] C# string.format null值变量值需要显示在占位符

发布时间 2023-07-04 09:04:49作者: WikiChen

起因是在C#程序里执行存储过程,恰好参数值里有NULL值变量,可是null值没有填充到占位符上。

网上一看,好多都是添加参数的方法(command.Parameters.Add() ,DBNull.value)去解决这个问题,实在不想搞的这么麻烦, 我就只想简单点。

 

比如

string.Format(@"EXEC XXX {0},{1},{2}",parameter1,parameter2,parameter3)

 

假设 parameter2 为 null , 结果出来就变成这样 。

EXEC XXX value1,,vaule3

 

实际想要的效果应该是这样。

EXEC XXX value1,null,vaule3

 

最终解决方法:

string.Format(@"EXEC XXX {0},{1},{2}",parameter1,parameter2 == null ? "null" : parameter2 ,parameter3)