当前位置: 首页 > 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的个…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求&#xff…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

网络编程(UDP编程)

思维导图 UDP基础编程(单播) 1.流程图 服务器:短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

Angular微前端架构:Module Federation + ngx-build-plus (Webpack)

以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...

python报错No module named ‘tensorflow.keras‘

是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...