没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|使用教程|编辑:我只采一朵|2018-02-05 14:22:35.000|阅读 1161 次
概述:今天的文章中,我们来看一个教你如何在Linux上使用FastReport Core的例子。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
相关链接:
今天的文章中,我们来看一个教你如何在Linux上使用FastReport Core的例子。
首先对于Linux,我们将需要额外的库,默认情况下可能并没有安装:
在服务器端Linux操作系统上通常没有安装XServer,而这是处理FastReport Core图形所必需的。所以我们必须安装它。你可以选择Xvfb、VcXsrv或任何其他服务。
我们待会儿再来讲XServer的问题,现在,我们先创建一个ASP.Net Core应用程序:

选择Web应用程序:

通过NuGet将FastReport Core添加到项目中。

我们添加一个本地仓库作为NuGet选项中的包的来源:

设置对本地存储库或文件夹Service FastReport.2017.4.0-release.nupkg的引用:

从下拉列表中选择软件包的本地源并安装FastReport软件包。
从“Controllers”文件夹中打开“HomeController.cs”文件。我们添加几个额外的库到使用部分:
using FastReport; using FastReport.Export.Html; using System.IO; using System.Text;
我们来编辑Index方法:
public IActionResult Index()
{
Report report = new Report();
string report_path = ”Reports”;
System.Data.DataSet dataSet = new System.Data.DataSet();
dataSet.ReadXml(report_path + "nwind.xml");
report.Report.RegisterData(dataSet, "NorthWind");
report.Report.Load(Path.Combine(report_path, "Simple List.frx"));
report.Prepare();
HTMLExport export = new HTMLExport();
export.Layers = true;
using (MemoryStream ms = new MemoryStream())
{
export.EmbedPictures = true;
export.Export(report, ms);
ms.Flush();
ViewData["Report"] = Encoding.UTF8.GetString(ms.ToArray());
ViewData["ReportName"] = "Simple List.frx";
}
return View();
由于WebReport对象在FastReport Core中暂时不可用,因此我们使用常规报表对象。创建一个数据源并将其注册到报表对象中。加载报表模板。使用 Prepare () 方法准备报表。接下来,我们在HTML中创建已完成的报表的导出。我们导出为MemoryStream流(或文件)。然后,我们使用ViewData或ViewBag将报表传递给视图。
现在继续编辑“Views - > Index.chtml”视图。
这非常简单 - 我们以HTML格式显示报表:
@{
ViewData["Title"] = "Home Page";
}
@if (ViewData.ContainsKey("Report"))
{
@Html.Raw(ViewData["Report"])
}
如前所述,FRCore需要XServer,而服务器端Linux并不提供。
我们来看一个使用debian服务器配置Linux示例:
1.打开控制台;
2.更新apt-get并安装软件包:
3.更改环境变量,DISPLAY =: 99。
我们在Program类中添加了两个方法。LinuxStart方法检查是否正在运行,如果是XServer,如果是的话则关闭它并创建一个新的。
StopLinux方法仅停止虚拟服务器。
public class Program
{
static Process xvfb;
const string xvfb_pid = "pid.xvfb.fr";
public static void Main(string[] args)
{
if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
LinuxStart();
BuildWebHost(args).Run();
if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
LinuxStop();
}
private static void LinuxStop()
{
xvfb.Kill();
if (File.Exists(xvfb_pid))
File.Delete(xvfb_pid);
}
public static void LinuxStart()
{
if (File.Exists(xvfb_pid))
{
string pid = File.ReadAllText(xvfb_pid);
try
{
xvfb = Process.GetProcessById(int.Parse(pid));
xvfb.Kill();
xvfb = null;
}
catch { }
File.Delete(xvfb_pid);
}
string display = Environment.GetEnvironmentVariable("DISPLAY");
if (String.IsNullOrEmpty(display))
{
Environment.SetEnvironmentVariable("DISPLAY", ":99");
display = ":99";
}
ProcessStartInfo info = new ProcessStartInfo();
info.FileName = "/usr/bin/Xvfb";
info.Arguments = display + " -ac -screen 0 1024x768x16 +extension RANDR -dpi 96";
info.CreateNoWindow = true;
xvfb = new Process();
xvfb.StartInfo = info;
xvfb.Start();
File.WriteAllText(xvfb_pid, xvfb.Id.ToString());
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseUrls("//[::]:5000")
.Build();
}
应用程序已准备就绪。运行查看效果:

总结一下,我们可以得出结论,和Windows一样,在Linux上运行FastReport Core非常简单。只不过需要一些操作系统的高级设置才能使用.Net Core。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ke049m.cn



在使用Parasoft C/C++test执行BugDetective数据流分析时,可能会遇到用户自定义的资源API,那在这种情况下,若要判断是否存在资源问题,如资源泄露等,则需要手动配置测试配置。
大型SaaS系统的自动化测试常常受制于界面变化快、结构复杂、加载机制多变等因素。从元素识别到脚本管理,SmartBear TestComplete帮助Salesforce建了可靠的自动化测试体系。
BarTender 标签管理系统,正是帮助企业轻松实现 GS1 标准化标签设计、编码生成与信息联动的强大工具。
Parasoft C/C++test 是一款功能强大的 C/C++ 软件测试工具,集成了静态代码分析、单元测试、集成测试和覆盖率分析等功能,单元测试作为其关键功能之一,为了适配多样化的目标部署环境,C/C++test 设计了灵活的测试结果收集机制。通过Socket通讯方式来收集单元测试结果,从而扩展其测试覆盖范围与应用场景。
相关产品
用于快速高效地生成报表的附加组件
FastScriptFastScript是一个跨平台的多语言脚本引擎,帮助开发者在他们的应用程序中增加脚本功能。
FastCube VCLFASTCUBE VCL是一款有效的数据分析工具
FastReport .Net一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案。
FastQueryBuilderFastQueryBuilder是一款简单实用的可视SQL请求软件开发包。它与本地CS数据库兼容。
最新文章 MORE
半岛外围网上直营相关的文章 MORE
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ke049m.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
半岛外围网上直营 