DataSources
Contenido
[
Ocultar
]ReportBuilderContext.DataSources property
Fuentes de datos utilizadas para crear el informe.
public Dictionary<object, string> DataSources { get; }
Observaciones
La clave representa la fuente de datos, mientras que el valor es el nombre de la fuente de datos. El nombre de la fuente de datos puede ser nulo o una cadena vacía; en tales casos, el motor de informes detectará automáticamente el nombre de la fuente de datos de la fuente de datos especificada.
Ejemplos
Muestra cómo rellenar un documento con fuentes de datos utilizando documentos de la secuencia.
// Hay varias formas de rellenar un documento con fuentes de datos utilizando documentos de la secuencia:
MessageTestClass sender = new MessageTestClass("LINQ Reporting Engine", "Hello World");
using (FileStream streamIn = new FileStream(MyDir + "Report building.docx", FileMode.Open, FileAccess.Read))
{
using (FileStream streamOut = new FileStream(ArtifactsDir + "LowCode.BuildReportDataSourceStream.1.docx", FileMode.Create, FileAccess.ReadWrite))
ReportBuilder.BuildReport(streamIn, streamOut, SaveFormat.Docx, new object[] { sender }, new[] { "s" });
using (FileStream streamOut = new FileStream(ArtifactsDir + "LowCode.BuildReportDataSourceStream.2.docx", FileMode.Create, FileAccess.ReadWrite))
ReportBuilder.BuildReport(streamIn, streamOut, SaveFormat.Docx, sender, "s");
using (FileStream streamOut = new FileStream(ArtifactsDir + "LowCode.BuildReportDataSourceStream.3.docx", FileMode.Create, FileAccess.ReadWrite))
ReportBuilder.BuildReport(streamIn, streamOut, SaveFormat.Docx, sender, "s", new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
Stream[] images = ReportBuilder.BuildReportToImages(streamIn, new ImageSaveOptions(SaveFormat.Png), new object[] { sender }, new[] { "s" }, new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilderContext reportBuilderContext = new ReportBuilderContext();
reportBuilderContext.ReportBuilderOptions.MissingMemberMessage = "Missed members";
reportBuilderContext.DataSources.Add(sender, "s");
using (FileStream streamOut = new FileStream(ArtifactsDir + "LowCode.BuildReportDataSourceStream.4.docx", FileMode.Create, FileAccess.ReadWrite))
ReportBuilder.Create(reportBuilderContext)
.From(streamIn)
.To(streamOut, SaveFormat.Docx)
.Execute();
}
Muestra cómo rellenar un documento con fuentes de datos.
public void BuildReportDataSource()
{
// Hay varias formas de rellenar un documento con fuentes de datos:
string doc = MyDir + "Report building.docx";
MessageTestClass sender = new MessageTestClass("LINQ Reporting Engine", "Hello World");
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.1.docx", sender, "s");
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.2.docx", new object[] { sender }, new[] { "s" });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.3.docx", sender, "s", new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.4.docx", SaveFormat.Docx, sender, "s");
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.5.docx", SaveFormat.Docx, new object[] { sender }, new[] { "s" });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.6.docx", SaveFormat.Docx, sender, "s", new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.7.docx", SaveFormat.Docx, new object[] { sender }, new[] { "s" }, new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.8.docx", new object[] { sender }, new[] { "s" }, new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
Stream[] images = ReportBuilder.BuildReportToImages(doc, new ImageSaveOptions(SaveFormat.Png), new object[] { sender }, new[] { "s" }, new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilderContext reportBuilderContext = new ReportBuilderContext();
reportBuilderContext.ReportBuilderOptions.MissingMemberMessage = "Missed members";
reportBuilderContext.DataSources.Add(sender, "s");
ReportBuilder.Create(reportBuilderContext)
.From(doc)
.To(ArtifactsDir + "LowCode.BuildReportDataSource.9.docx")
.Execute();
}
public class MessageTestClass
{
public string Name { get; set; }
public string Message { get; set; }
public MessageTestClass(string name, string message)
{
Name = name;
Message = message;
}
}
Ver también
- class ReportBuilderContext
- espacio de nombres Aspose.Words.LowCode
- asamblea Aspose.Words