gpt4 book ai didi

c# - 是否有内置的 C# 方法可以将空字符串转换为空值?

转载 作者:IT王子 更新时间:2023-10-29 04:38:02 25 4
gpt4 key购买 nike

很多时候我有一个输入文本,如果它是空的(例如,如果用户没有输入任何文本),我想向数据库查询发送一个空值。

不想发送String.Empty.(或"")。

因此我发现自己经常这样做:

var mySqlValue =  string.IsNullOrEmpty( tbCustomerId.Text)?null:tbCustomerId.Text;

这对我来说很丑陋。 .NET 为相反的场景提供了许多其他解决方案:

string.IsNullOrEmpty
string.IsNullOrWhiteSpace
myProblemVal ?? myDefultVal

C# 中是否有任何内置的东西可以让我以更短的方式执行此操作,比如相反的方向?

我知道这可以通过编写我自己的扩展方法来解决,而且我知道该怎么做;这不是我感兴趣的解决方案。

我正在寻找一些代码,例如“if empty -> null”。

最佳答案

您可以使用扩展方法:

public static class Extensions {
public static string NullIfWhiteSpace(this string value) {
if (String.IsNullOrWhiteSpace(value)) { return null; }
return value;
}
}

你可以这样使用:

var mySqlValue = tbCustomerId.Text.NullIfWhiteSpace();

我真的不知道你想象的比扩展方法更好的东西是什么。你如何定义“更好”?更短?使用特殊关键字?使用很少使用的运算符看起来很聪明?这已经只是附加到您的值的单个方法调用,它甚至适用于空值,并且您需要的逻辑实际上不能用比这更短的方式来表达。另外,我不知道它有什么特殊的语法。

关于c# - 是否有内置的 C# 方法可以将空字符串转换为空值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10295028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com