当前位置: 首页 > news >正文

如何在 FastReport .NET 中构建和安装 Postgres 插件

 FastReport .NET 是一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案。 功能非常丰富,功能广泛。今天我们将介绍如何使用报表设计器的 FastReport 插件连接数据库。

FastReport .NET 是适用于.NET Core 3,ASP.NET,MVC和Windows窗体的全功能报告库。使用FastReport .NET,您可以创建独立于应用程序的.NET报告。

   免费获取中文手册

以下是 FastReport .NET 安装路径的示例:  C:\Program Files (x86)\FastReports\WinForms

以下是 FastReport .NET 安装路径的示例:  C:\Program Files (x86)\FastReports\WinForms

1. 转到安装文件夹,然后按照路径Extras\Core\FastReport.Data\FastReport.Data.Postgres

重要!路径应该与此完全一致;其他路径上可能有过时的项目。

2. 我们在 Visual Studio 中找到项目文件 FastReport.Data.Postgres.csproj。

重要!此文件夹中有几个文件,您需要打开这个文件。

3. Visual Studio 中会打开几个项目。选择 FastReport.Data.Postgres 并右键单击它,然后在上下文菜单中单击“设置为启动项目”。

在 Visual Studio 中选择 FastReport.Data.Postgres 项目

4. 选择“Release”版本和“net462”目标。

在 Visual Studio 中选择构建和目标

5. 在决策树中,展开项目 -> 依赖项 -> net462 -> 项目和包。注意三角形内的感叹号。

Visual Studio 中的决策树

6. 在“项目”中删除“FastReport”。我们不会删除依赖项中的任何其他内容。现在您需要添加 nuget 包 FastReport.Net 和 Npgsql。

重要!必须将 FastReport.Net 作为包添加,因为添加 FastReport.dll 的方法不再有效。

7. 在“依赖项”上下文菜单中,选择“管理 NuGet 包”。

连接 NuGet 包

8.您需要添加两个包源:nuget.org 和引用我们的nuget-server的源,或者引用本地文件夹  C:\ProgramFiles(x86)\FastReports\WinForms\Nugets。

9.选择nuget.org源。

在 Visual Studio 中连接 nuget.org

10. 在“已安装”或“更新”选项卡上,找到 Npgsql 包并单击它。

在 Visual Studio 中连接 Npgsql 包

11.我们在右侧看到以下信息:当前与项目相关的版本是3.2.7,软件包的最新版本是8.0.3,卸载和更新按钮。

12.单击更新按钮。

13.选择第二个包源。示例使用Fast Reports Inc. 的 Nuget Server。

快速报告私人 NuGet 服务器

14. 转到“浏览”选项卡,然后在搜索栏中 输入fastreport.net

按私有 NuGet 服务器中的包进行搜索

15.选择FastReport.Net包或FastReport.Net.Demo作为试用版。

重要!它应该是这两个包之一,因为 FastReport.Net.Pro 包已经过时并且不再使用。

16.我们仔细看版本,选择我们安装的版本。本手册涵盖2024.2.12版本。

检查已安装软件包的版本

17.单击“安装”按钮。我们接受许可协议并等待软件包安装。

18. 右键单击 FastReport.Data.Postgres 项目,然后在上下文菜单中单击“构建”。

构建项目

19. 在左下角,我们可以看到“构建成功”的字样。这意味着插件已正确构建,可以关闭 Visual Studio。

20. 转到安装 FastReport .NET 的文件夹,如说明开头所示,即 C:\Program Files (x86)\FastReports\WinForms。这里应该有“Designer.exe”。

21. 我们从此文件夹移动到以下路径的文件夹:Extras\Core\FastReport.Data\FastReport.Data.Postgres\bin\Release

22.我们找到2个文件夹“net462”和“net6.0-windows7.0”,进入net462文件夹。

23. 从此文件夹复制以下文件:

FastReport.Data.Postgres.dll、
Npgsql.dll、
Microsoft.Bcl.AsyncInterfaces.dll、
Microsoft.Extensions.Logging.Abstractions.dll、
System.Threading.Tasks.Extensions.dll、
System.Memory.dll

24.将复制的文件粘贴到Designer.exe所在的文件夹中。

25. 运行“Designer.exe”,进入文件 -> 选项菜单(如果功能区界面被禁用,则进入查看 -> 选项)。进入“插件”选项卡。

26.如果已经有FastReport.Data.Postgres插件,则需要将其删除并重复步骤21。

报表设计器中用于连接插件的窗口

27. 点击“添加”按钮,转到设计器文件夹,在此示例中为  C:\Program Files (x86)\FastReports\WinForms

28. 选择FastReport.Data.Postgres.dll文件并点击“打开”按钮。插件出现在列表中。

插件成功连接到设计器

29. 注意左下角的文字,提示需要重启设计器。点击OK按钮。关闭设计器。

30. 再次启动 Designer.exe。如果您按照此说明操作,则与 Postgres 的连接应出现在连接列表中。

可用的数据源连接列表

31. 如果您在尝试连接时看到以下错误:

插件连接错误

然后您需要关闭设计器,将错误中指示的文件从С:\Program Files(x86)\Fast Reports\WinForms \Extras\Core\FastReport.Data\FastReport.Data.Postgres\bin\Release\net462 复制到包含 Designer.exe 的文件夹。

在FastReport .NET中,可以非常容易地组装和连接各种连接器到各种数据库。

相关文章:

如何在 FastReport .NET 中构建和安装 Postgres 插件

FastReport .NET 是一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案。 功能非常丰富,功能广泛。今天我们将介绍如何使用报表设计器的 FastReport 插件连接数据库。 FastReport .NET 是适用于.NET Core 3,ASP.NET,MVC和Windows窗体…...

JVM指令重排序

文章目录 什么是指令重排序编译器优化JIT 编译优化处理器优化重排序数据依赖性 硬件层的内存屏障指令重排的代码验证好处减少管道阻塞提高缓存利用率利用并行执行单元性能提升更好地利用硬件资源 问题内存可见性问题编程复杂性增加调试困难 解决方案:Java内存模型&a…...

改造字典关键字:

怎样把第一个关键字的值都 加到所有关键字上? {type: 7, typenum: , typemon: } 我们可以使用字典的keys()方法来获取所有的关键字,然后通过遍历字典的方式将第一个关键字的值添加到其他关键字的名称上。以下是一个示例代码: data {type: …...

Neo4j 图数据库入门

图形数据库存储节点和关系,而不是表或文档。数据的存储方式就像你在白板上勾画想法一样。您的数据存储不受预定义模型的限制,允许以非常灵活的方式考虑和使用它。 一、核心概念:属性图形模型 Neo4j使用属性图数据库模型。图数据结构由节点(离…...

linux 磁盘满了,程序运行失败,如何处理?df -h

场景:紧急呼救,上传图片失败了。我一脸懵,服务器这是又咋地了,别邪乎姐姐,姐姐胆子小啊。 一、寻找问题原因 1、OSS出问题了? 然后我尝试了 IOS 的APP是没问题的,Android提示上传失败&#xf…...

Python编码系列—前端后浪:Python前后端分离开发实战指南

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…...

Docker学习之路【五】了解数据卷

定义与特性 Docker数据卷是一个特殊目录,,用于实现容器间数据的持久化和共享。数据卷存在于宿主机上,可以被一个或多个容器使用。它独立于容器的生命周期,意味着即使容器被删除,数据卷中的数据也会保留。数据卷的主要…...

matlab如何设置产生的随机数一致

在MATLAB中,确保产生的随机数序列一致,通常需要使用随机数生成器的种子(seed)。通过设置相同的种子值,可以确保在每次运行代码时,随机数生成器从相同的初始状态开始,从而生成相同的随机数序列。…...

ansible --------拓展

编辑 hosts 配置文件 [rootmo ~]# vim /etc/ansible/hosts # 创建目录 [rootmo ~]# mkdir /etc/ansible/playbook # 编辑配置文件 [rootmo ~]# vim /etc/ansible/playbook/nginx.yml # 执行测试 [rootmo ~]# ansible-playbook /etc/ansible/playbook/nginx.yml roles 修…...

gazebo下使用Fast-planner配置(包含mpc局部规划+控制Gazebo小车以及FastPlanner配置)

源码链接: https://github.com/USE-jx/NMPC_CASADI_CPP?tabreadme-ov-file #这是NMPC的 里面有Fast-Planner,但编译可能缺少东西,所以再放一个Fast-Planner的,可以装装缺少的库 https://github.com/HKUST-Aerial-Robotics/Fast-P…...

Python核心编程--Python要点总结

Python 核心编程包括了一些关键的要点,理解这些要点对于掌握 Python 至关重要。以下是 Python 核心编程的一些要点: 1. 数据类型与数据结构 基本数据类型: int, float, str, bool容器类型: list, tuple, set, dict不可变类型与可变类型: tuple 是不可变…...

【mysql】mysql配置文件之优先级学习

本站以分享各种运维经验和运维所需要的技能为主 《python零基础入门》:python零基础入门学习 《python运维脚本》: python运维脚本实践 《shell》:shell学习 《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战 《k8…...

自然语言处理(NLP)大模型

自然语言处理(NLP)大模型 自然语言处理(NLP)领域中的一种重要技术,具有强大的语言理解和生成能力。以下是对NLP大模型的详细介绍: 一、定义与背景 NLP大模型是指通过大规模预训练和自监督学习技术构建的…...

融合创新趋势:Web3时代的跨界融合

随着互联网技术的飞速发展,Web3时代的到来正引领着一场深刻的技术与社会变革。Web3,作为下一代互联网技术的代表,不仅仅是一种技术创新,更是一种跨界融合的趋势。通过去中心化、智能合约和区块链技术的应用,Web3正在重…...

面临新时代的机遇与挑战,联想凌拓将如何破局?

近年来,IT行业的技术进步日新月异,云计算、大数据、人工智能……各种新兴技术犹如雨后春笋般层出不穷,并且正在给千行百业带来全面的变革甚至重塑。 然而以上提到的所有新兴技术,都离不开数据的存储与管理。那么作为中国乃至全球领…...

2024.8.21

作业: 运行1个服务器和2个客户端 实现效果: 服务器和2个客户端互相聊天,服务器和客户端都需要使用select模型去实现 服务器要监视2个客户端是否连接,2个客户端是否发来消息以及服务器自己的标准输入流 客户端要监视服务器是否发来…...

在Ubuntu16.04里安装ROS Kinetic

1.设置apt的source list sudo sh -c echo "deb http://packages.ros.org/ros/ubuntu$(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list 2.设置gpd keys sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365…...

后端开发刷题 | 合并两个排序的链表

描述 输入两个递增的链表,单个链表的长度为n,合并这两个链表并使新链表中的节点仍然是递增排序的。 数据范围: 0≤n≤1000,−1000≤节点值≤1000 如输入{1,3,5},{2,4,6}时,合并后的链表为{1,2,3,4,5,6},…...

JAVA_7

JAVA_7 JAVA面向对象编程1. 抽象方法和抽象类 JAVA面向对象编程 1. 抽象方法和抽象类 使用abstract修饰的方法,没有方法体,只有声明。定义的是一种“规范”,就是告诉子类必须要给抽象方法提供具体的实现。包含抽象方法的类就是抽象类。通过…...

最大连续1的个数 III(LeetCode)

题目 给定一个二进制数组 nums 和一个整数 k,如果可以翻转最多 k 个 0 ,则返回 数组中连续 1 的最大个数 。 解题 def longestOnes(nums, k):left 0max_len 0zero_count 0for right in range(len(nums)):# 如果遇到0,统计当前窗口内0的个…...

Linux内存管理:malloc与free实现原理详解

Linux内存管理:malloc和free的实现原理深度解析1. 动态内存分配基础1.1 malloc和free函数原型void* malloc(size_t size); void free(void* ptr);malloc函数分配指定字节数的内存空间,返回指向该空间的void指针。由于返回的是通用指针,使用时…...

S32K144新手避坑指南:用S32DS for RAM配置GPIO输入输出,别再搞错推挽使能了

S32K144 GPIO配置实战:从原理到避坑的完整指南 第一次接触NXP S32K144的开发者,往往会在GPIO配置这个看似简单的环节栽跟头。特别是当你在调试按键检测或传感器信号读取时,明明硬件连接正确,代码逻辑也没问题,可就是无…...

医学影像融合避坑指南:如何避免MRI-PET配准中的常见伪影问题

医学影像融合避坑指南:如何避免MRI-PET配准中的常见伪影问题 在精准医疗时代,多模态医学影像融合已成为临床诊断和科研分析的重要工具。当我们将功能显像的PET与高分辨率解剖结构的MRI相结合时,理想情况下应该获得"11>2"的互补优…...

团队协作中的Git分支管理:为什么我们最终放弃了Rebase?

团队协作中的Git分支管理:为什么我们最终放弃了Rebase? 当我们的技术团队从5人扩展到20人时,Git仓库的提交历史突然变成了需要考古学家破译的楔形文字。最初被Rebase的"整洁线性历史"吸引的我们,在经历三个月的实践后&a…...

简历匹配已成过去式:AI招聘选型的避坑与实战指南

讲真,最近这一年,我听到最多的一句抱怨就是:“我们花了大几十万上的AI招聘系统,怎么用着用着,就只剩下‘自动筛简历’和‘群发面试通知’的功能了?” 在2026年这个节点,如果一家公司的AI招聘系统…...

运动控制选EtherCAT,过程控制用PROFINET?深入聊聊工业以太网协议背后的设计哲学与取舍

工业以太网协议的设计哲学:EtherCAT与PROFINET的技术抉择 在自动化生产线上,一个机械臂需要以0.1毫米的精度重复定位,而百米外的反应釜温度必须控制在0.5℃范围内——这两种看似相似的工业控制需求,背后却对应着完全不同的通信协议…...

工业能量:01 电源是谁?开关电源 vs UPS

01 电源是谁?开关电源 vs UPS 在工厂里,最昂贵的不是设备,而是“停机一秒的代价”。 咱今天不聊加班不聊绩效,就拉家常聊聊厂里那个最“低调”的英雄——电源系统。 你以为停电就是灯灭了,大家歇会儿喝口水?兄弟,醒醒!在真工业现场,尤其是半导体、汽车总装、医药车间…...

SDXL-Turbo多场景落地教程:覆盖电商、游戏、教育、自媒体的6大用法

SDXL-Turbo多场景落地教程:覆盖电商、游戏、教育、自媒体的6大用法 1. 认识SDXL-Turbo:重新定义AI绘画体验 SDXL-Turbo不是传统的AI绘画工具,而是一个革命性的实时创作伙伴。想象一下,你打字的同时,画面就在眼前实时…...

WebPageTest API完全手册:自动化网站性能监控与集成

WebPageTest API完全手册:自动化网站性能监控与集成 【免费下载链接】WebPageTest Official repository for WebPageTest 项目地址: https://gitcode.com/gh_mirrors/we/WebPageTest WebPageTest 是一款强大的网站性能测试工具,其提供的 API 功能…...

SAR成像CS算法实战:从原理到点目标仿真的MATLAB实现

1. CS算法在SAR成像中的核心价值 第一次接触SAR成像处理时,我被CS(Chirp Scaling)算法的精妙设计震撼到了。这个算法就像一位经验丰富的魔术师,能够将雷达回波中的距离徙动(RCMC)和二次距离压缩&#xff08…...