如何将python对象作为参数传递给c#程序

本文关键字:参数传递 程序 python 对象 | 更新日期: 2023-09-27 18:09:47

我有一个c# windows应用程序,我需要传递在python脚本中创建的对象-作为c#程序的参数,反之亦然。那么我如何将Python脚本创建的对象作为参数传递给c#程序。

对于这种情况,i 不想使用Iron-Python。我的严格要求是使用通过运行C Python脚本创建的对象。我的Python脚本读取一个json文件并创建一个对象。

示例Json字符串:

{"?xml":{"@version":"1.0","@encoding":"Windows-1252"},"TestScript":{"TestExperiment":{"Test1":{"Control":[{"@Type":"System.Windows.Forms.TextBox","@Name":"Description","@FormName":"Test1","Text":null,"Visible":"True"},{"@Type":"System.Windows.Forms.TextBox","@Name":"Objective","@FormName":"Test1","Text":null,"Visible":"True"},{"@Type":"System.Windows.Forms.TextBox","@Name":"Test1","@FormName":"Test1","Text":null,"Visible":"True"}]}}}}

谢谢,

如何将python对象作为参数传递给c#程序

如果您的python对象序列化为Json,我认为您应该首先使用Json.net包将输入字符串解析为Json对象。

例如:

JObject obj = Jobject.Parse(jsonString);

之后,我建议您创建c#对象来镜像您的python对象,然后将它们反序列化为实际对象。

例如:

// Json String to Object
Product deserializedProduct = JsonConvert.DeserializeObject<Product>(productJsonString);