我已经看到了许多在.NET 中转换Object为a 的方法String,通常用于在对象类型未知时向用户显示对象的值.
这些包括:
Dim x as Object = 3
Dim y as Object = Nothing
Dim z as Object = DBNull.Value
Dim l_displayString As String
l_displayString = "" & x & "" & y & "" & z
l_displayString = If(x, "").ToString() & If(y, "").ToString() & If(z, "").ToString()
l_displayString = Convert.ToString(x) & Convert.ToString(y) & Convert.ToString(z)
Run Code Online (Sandbox Code Playgroud)
是否有Microsoft推荐的方法,或者这些方法都编译为相同的字节代码?
编辑:
让我稍微扩展一下这个问题:
这些方法有什么区别?我看不清底下发生了什么,所以很高兴知道一个人是否有任何性能优势.在某些情况下,这些调用可能会进行数千次(例如从大型表中读取),并且在几秒钟内完成调整可能会对UX造成很大影响.
Fel*_*ano 12
该 Convert.ToString(x)作品优雅即使x是零.一般来说,在处理来自数据库的东西时,我认为转换是最好的方法.另一个建议,当使用浮点数/十进制数时,请关注CultureInfo,即不要信任.作为十进制符号,如果你想假设使用CultureInfo.InvariantCulture.