正如在this other question中提到的,我正在使用C#和JSON设置我的第一步。
我正在开发一个小应用程序,它可以从数据库中读取信息并将其写入JSON文件。为了做到这一点,我想到创建类,因为它们是在JSON文件中定义的。为此,我使用了Web Essentials,它做得很好:类被完全生成。我在上一个问题中已经提到了这一点。
现在,我正在考虑使用这些类来写回JSON文件,所以我遇到了这样的情况:
JSON file1 : used as an input in order to create the class diagram.
DB : contains some information I need to add to the JSON file.
JSON file2 : used as an output, based on "JSON file1", and having the
extra information, retrieved from the DB.
很明显,我很天真地这样做了:
root.ToString(); // hoping that this would generate the JSON output.
但是,我似乎只能从该方法中获得一些基本信息(名称空间和类名,没有内容)。
使用intellisense,我没有看到任何生成JSON输出的方法,但在我的代码中有一个希望的天赋(由Web Essentials生成的),如您所见:
public class Rootobject
{
public Project project { get; set; }
}
public class Project
{
public string commonDESCRIPTION { get; set; }
...
public Location[] locations { get; set; }
正如你所看到的,Rootobject
和Project
都没有从任何东西继承(它们也没有实现接口),我简直不敢相信没有任何类涵盖这种行为。所以,我想知道我需要从哪个类继承来解决这个问题。
然而,我不认为这可能是那么容易,也许需要做一些Web Essentials配置编辑来涵盖这一点,但我不知道如何修改Visual Studio扩展配置。
编辑
有关我的Web Essentials安装的更多信息:在我的Visual Studio 2017 Enterprise平台上安装Web Essentials后,我可以在编辑菜单中看到选择性粘贴,粘贴JSON作为类,但我在菜单工具栏中看不到Web Essentials(只有文件,编辑,...),在工具,选项中我也看不到任何Web Essentials引用。
有人能帮我吗
先谢谢你了
1条答案
按热度按时间mxg2im7a1#
显然(正如Ruan所提到的),Web Essentials可以将JSON文件转换为类模型,但在另一个方向上,必须遵循另一种方式。
方法,这是提到(NewtonSoft),是一个非常好的:
using Newtonsoft.Json;
。string result = JsonConvert.SerializeObject(root);
。