当前位置:  开发笔记 > 编程语言 > 正文

字符串语法问题

如何解决《字符串语法问题》经验,为你挑选了2个好方法。

我想要实现的是合并三个字符串.两个作为字符串提供; firstname和lastname,而第三个是简单的逗号/空格分隔符.给出以下代码行:

//Working code
var sep = ", ";
var fullName = myNewBO[0].LastName + sep + myNewBO[0].FirstName;

//Erronous code
var fullName = myNewBO[0].LastName + ", " + myNewBO[0].FirstName;

该字符串将返回到DataGridView中的单元格.虽然第一位代码执行时已经过了,但后者却没有.字符串未按预期显示在单元格中.有人能告诉我为什么后者不起作用?此外,如果您有更好的解决方案,请提供一个.

编辑:解决了.正如所怀疑的,并且通过几个答案指出问题在我的代码中的其他地方,并且两个替代方案完全相同.谢谢你的语法建议:)



1> JoshBerke..:

我更喜欢使用 string.Format("{0}, {1}",myNewBO[0].LastName,myNewBO[0].FirstName)

现在您可以抽象出格式字符串,如果您希望它是"First Last",例如您可以使用不同的格式字符串.

编辑

为了回应你的实际错误,我喜欢这里的其他人没有看到你应该使用的代码行有什么问题,所以问题变成:"你如何将这个值绑定到网格?"

你是在Eval()或代码背后等做这个....

一个建议是添加一个ToString(string)方法,该方法接受格式字符串,然后您可以绑定到方法的评估.如果您的业务需求发生变化,您只需更改格式字符串即可.



2> Joel Coehoor..:
string.Join(sep, new string[] {myNewBO[0].LastName, myNewBO[0].FirstName});

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有