c# - 获取对象的 ToString() 以显示 '\0' 作为空字符的字符串?

标签 c# string visual-studio

当一个人将一个字符串包装到一个对象中并使该对象成为 ToString 时返回该字符串,\0从未显示:

public void Test()
{
    var a = "a";
    var b = "\0";
    var c = new ClassA { Value = a };
    var d = new ClassB { Value = b };
}

public class ClassA
{
    public string Value;

    public override string ToString()
    {
        return Value;
    }
}

public class ClassB
{
    public string Value;

    public override string ToString()
    {
        return Value;
    }
}

enter image description here

如何获得 d显示为 b在调试器中?

最佳答案

How can one get d to show up as b in the debugger?

只需应用 DebuggerDisplayAttributeB类:

[DebuggerDisplay("{Value}")]
public class ClassB
{
    public string Value;

    public override string ToString()
    {
        return Value;
    }
}

关于c# - 获取对象的 ToString() 以显示 '\0' 作为空字符的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77245975/

相关文章:

c# - 在 WinForm DataRepeater C# Power Pack 中处理按钮单击

c++ - 如何使用 substr 和 find 在 C++ 中将用户定义的句子拆分为单词?

c# - LINQ 查询到 Visual Studio 2010 或 2012 中的 sql 查询生成器

c# - 使用不工作的 Visual Studio 2019 自动导入

c# - 在 Visual Studio 停止时使用react

c# - 使用 Json.NET 反序列化带有数组数组的 json 字符串

c# - Unity 5 Windows Phone 8 游戏在 wp8 设备中启动时崩溃

c# - 循环获取 PDF 文件

java - Java 中的标点符号允许字符串比较

javascript - 正则表达式获取两个字符之间的文本?