今天提交带有以下行的补丁时注意到了这一点:
lblCompletionTime.Text = String.Concat(trainingSkill.EndTime.ToLocalTime())
我能理解为什么贡献者使用上述语法将两个字符串连接起来形成一个多部分日期/时间字符串。
是否有一些隐藏的原因导致 String.Concat() 的单个参数重载,或者它是否被语言设计者为了“完整性”而包含在内。
我已经将这一行替换为:
lblCompletionTime.Text = trainingSkill.EndTime.ToLocalTime().ToString(CultureInfo.CurrentCulture)
具有相同的输出。
最佳答案
String.Concat(Object) 在传递 null 时为您提供 String.Empty; ToString 会因空指针异常而崩溃。
关于c# - 为什么 String.Concat() 有一个重载,它在 .NET 中接受一个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1349027/