var sample = new
{
Time = DateTime.Now,
Name = "Hello"
};
Trace.TraceInformation("{0}", sample);
Run Code Online (Sandbox Code Playgroud)
输出为
ProcessInvocation86.exe信息:0:{Time = 04.11.2012 22:07:52,Name = Hello}
我想在我的应用程序中使用不同的格式.有没有办法在C#中更改匿名对象的ToString()实现?也许每个AppDomain或某些静态字段?
不,你不能做到这一点- ToString,Equals以及GetHashCode具有由框架提供的默认实现.要覆盖此功能,您应该从您的匿名类型继承,这是不可能的.
使用String.Format以获得所需的输出.