如何覆盖C#中的ToString()方法?
答
根据您的问题,给变化一些ToString
执行中的字符,则需要使用base
关键字调用现有的ToString
方法:
public override string ToString()
{
return base.ToString().Replace("something", "another thing");
}
请注意,如果您忘记base
关键字,它会自动重复进行自我调用,直至获得StackOverflowException
。
答
在你的类要在覆盖它,添加:
public override string ToString()
{
// return your string representation
}
答
添加以下的要重写ToString功能类:
public override string ToString()
{
// Add your implementation here
}
答
所有你需要的是尝试写公众覆盖,然后Visual Studio会为您创建的方法是这样的:
public override string ToString()
{
// Implement your own code and return desired string
}
答
如果有人寻找“如何覆盖ToString()方法”的一般答案,我写了一篇文章“Override ToString() using JSON serialization or something else”。
在一个总结,以下技术可用于简化的ToString的创建():
JSON序列(无论是DataContractJsonSerializer,JSON.NET或NuGet包JsonValue)。
XMLSERIALIZE
ServiceStack.Text C# .NET Extension method: T.Dump();