我想使用var_dump
来显示c#中变量中保存的数据,但我不知道c#中的函数。如果我使用Console.Write()
,我只能使用一个特定的变量。
例如,我想vardump data中的所有内容:
class Data {
int total_data = 21,
int total_page = 1,
int page = 1,
int limit = 21
}
var data = new Data();
Console.WriteLine(data.total_data);
如何在c#中获得类似于PHP的var_dump
的东西?我试过使用Console.WriteLine(data)
,但它不工作相同的方式。我该怎么做呢?
如果它是从json来处理或创建api,您可以尝试使用JsonConvert.SerializeObject(data)将其序列化为json字符串
我正在使用一个库ObjectDumper。. NET
示例来自README:
static void Main(string[] args)
{
var persons = new List<Person>
{
new Person { Name = "John", Age = 20, },
new Person { Name = "Thomas", Age = 30, },
};
var personsDump = ObjectDumper.Dump(persons);
Console.WriteLine(personsDump);
Console.ReadLine();
//CONSOLE OUTPUT:
{ObjectDumperSample.Netfx.Person}
Name: "John"
Age: 20
{ObjectDumperSample.Netfx.Person}
Name: "Thomas"
Age: 30
您可以:
- 重写ToString方法
- 使用记录类型而不是类(编译器为您合成
ToString
) - 创建一个静态助手方法,该方法接受一个对象,并使用反射来打印所有属性的值 在类上设置ToConsole()方法
- 将对象序列化为json并打印