JsonDataSource
内容
[
隐藏
]JsonDataSource class
提供对报告中使用的 JSON 文件或流的数据的访问。
要了解更多信息,请访问LINQ 报告引擎文档文章。
public class JsonDataSource
构造函数
姓名 | 描述 |
---|---|
JsonDataSource(Stream) | 使用解析 JSON 数据的默认选项,创建一个包含 JSON 流数据的新数据源。 |
JsonDataSource(string) | 使用解析 JSON 数据的默认选项,使用来自 JSON 文件的数据创建新的数据源。 |
JsonDataSource(Stream, JsonDataLoadOptions) | 使用指定的选项解析 JSON 数据,创建一个包含 JSON 流数据的新数据源。 |
JsonDataSource(string, JsonDataLoadOptions) | 使用指定的选项解析 JSON 数据,创建一个包含 JSON 文件中数据的新数据源。 |
评论
要在生成报告时访问相应文件或流的数据,请将此类的实例作为 数据源传递给以下之一ReportingEngine
.BuildReport 重载.
在模板文档中,如果顶级 JSON 元素是数组,则JsonDataSource
实例应该以与 相同的方式处理DataTable 实例。如果顶级 JSON 元素 是一个对象,则JsonDataSource
实例应该以与 相同的方式处理DataRow 实例。有关更多信息,请参阅模板语法参考 (https://docs.aspose.com/display/wordsnet/Template+Syntax)。
在模板文档中,您可以使用 JSON 元素的类型值。为了方便起见,引擎将 JSON 简单类型集合 替换为以下集合:
- Nullable
- Nullable
- Nullable
- Nullable
- String
引擎根据 JSON 表示自动识别额外类型的值。
要覆盖 JSON 数据加载的默认行为,请初始化并传递JsonDataLoadOptions
实例 到此类的构造函数。
例子
展示如何使用 JSON 作为数据源(字符串)。
Document doc = new Document(MyDir + "Reporting engine template - JSON data destination.docx");
JsonDataLoadOptions options = new JsonDataLoadOptions
{
ExactDateTimeParseFormats = new List<string> {"MM/dd/yyyy", "MM.d.yy", "MM d yy"},
AlwaysGenerateRootObject = true,
PreserveSpaces = true,
SimpleValueParseMode = JsonSimpleValueParseMode.Loose
};
JsonDataSource dataSource = new JsonDataSource(MyDir + "List of people.json", options);
BuildReport(doc, dataSource, "persons");
doc.Save(ArtifactsDir + "ReportingEngine.JsonDataString.docx");