C#C#基础-关于用json给控制台程序传值的坑

上周遇见了三个百般稀奇的坑,首先写了四个程序,第③个程序输出成dll,第1个程序是控制台程序。

在首先个程序里,小编利用了process去运营首个程序,同时传入了贰个Json作为参数,即:

Process.Start(program2.exe, Jsonpara);

其一Jsonpara是将1个List<List<string>>的泛型转换来string型。

结果当自家感动的守候程序的那一刻时,控制台报错了,Newtonsoft.Json.reader巴拉巴拉错误。。。

也等于说程序二不可能将该字符串再反类别化为List<List<string>>,那么便是字符串不对咯。

排查进程:

1)程序二 控制台传参数调试,无错。。。

2)程序一检查Json是还是不是天经地义,无错。。。

3)程序二控制台出口传入的参数,有错!!!

原因:Json将引号展开了转义。。。当然你在先后一中的调节和测试是毋庸置疑展现的,只可是控制台接收时它就变了!!!

消除:为了程序的稳定性,直接所传的Json写入三个txt文件内,然后控制台程序去读取该文件。

注:假设在决定台去修改转义过的参数然后正确读取,或许在先后一中去修改json参数,使它转义之后成为正确的参数,个人觉得因小失大,还没写入读取文件方便。

相关文章