.Net Framework

ASP.NET Core3.1 Ocelot路由

亡梦爱人 提交于 2020-11-06 23:57:03
  1.路由前一个章节我们已经介绍过Ocelot,相信大家也了解到,Ocelot的主要功能是接收客户端等传入的HTTP请求,并将其转发到下游服务。Ocelot当前仅以另一个http请求的形式支持此功能(将来可能是任何传输机制)。   Ocelot将一个请求路由到另一个请求。为了让Ocelot正常工作,您需要在配置中设置一个Route。下面我们就Ocelot基础项目构建简单介绍下路由功能。   2.Ocelot基础项目构建(APIGatewayBasicDemo)现在我们根据GitHub贡献者开源项目来学习Ocelot,根据下载下来Ocelot基础项目结构来看,我们能看到有一个网关项目(APIGateway),一个客户API项目(CustomersAPIServices),一个产品API项目(ProductsAPIServices)。如下图所示:      2.1Ocelot网关配置APIGateway网关项目根目录下面有一个configuration.json配置文件,内容如下:      {   //ReRoutes:处理上游请求的对象(客户端),每个数组{}就是配置:上游地址和对应下游地址   "ReRoutes": [   {   //以Downstream开头的,是要转发到下游服务器的地址(CustomersAPIServices),与nginx转发类似   /

掌握这五大要点,助你轻松搭建报表系统!

倾然丶 夕夏残阳落幕 提交于 2020-11-05 17:50:34
作为一款专注于 .NET 平台的报表控件,ActiveReports 不仅满足了WinForm、ASP.NET、.NET Core、WPF 等平台下的中国式复杂报表设计,还满足了HTML5、移动跨平台的报表开发需求,作为专业的报表工具为全球超过 300,000 名开发者提供全面的报表解决方案。 伴随着ActiveReports V14 的发布,其报表设计器UI得以全面增强,报表预览方式得以全面优化,报表设计能力得以大幅提升。 点击下载ActiveReports最新版本>> Office作为日常办公场景中高频使用的软件产品,培养了大量用户的使用习惯和思维,企业在向数字化和智能化转型的过程中,同样也希望延用熟悉的操作习惯和风格。因此,一款系统能否被大量推广使用,取决于其是否符合Office的办公标准,如表格数据能否与Excel兼容、文档报表能否与 Word 适配等。 在应用系统中,不论是HIS、MES、ERP,还是HRM、SCM系统都需要以报表展示数据,除了Excel外,Word作为另一种常见的报表模板类型,也有十分广泛的应用,如周报、检测报告、述职报告、质检报告和评测报告等。 因此,Word报表设计模块对于系统功能而言必不可少,系统往往需要根据当前实时的数据,动态生成一份完整的行业可行性分析报告,并满足实时修改、编辑、展示、打印、导出报告模板等功能。 常见的 Word报告类型

Java Socket通信

心不动则不痛 提交于 2020-11-05 14:20:54
1、单一客户端与服务器: package com.socket; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; public class Server { public static void main(String[] args) { try { // 创建Socket对象,绑定并监听窗口 ServerSocket serverSocket = new ServerSocket(8888 ); System.out.println( "服务器已启动,等待客户端连接..." ); Socket socket = serverSocket.accept(); // 监听并接收到此套接字的连接,返回一个Socket对象 // 根据输入输出流和客户端连接 InputStream inputStream = socket.getInputStream(); // 得到一个输入流

报表开发指南:如何选择一款更易于使用和维护的Word报表工具

三世轮回 提交于 2020-11-05 07:26:02
Word报告是实现信息系统的核心功能点,如果自行开发这类报表模板,不仅需要考虑数据如何准备、报表如何设计,还要自行实现打印和导出等功能,其难度不亚于直接用代码去画报表。 而通过编写代码“画出”的报表,不仅效率不高、后期维护的工作量巨大、不易维护和修改,一旦客户需求有所改变,就需要调整系统源码,给项目交付带来不可预测的风险。 因此,系统中关于Word模板的设计工作需要一款具备强大报表设计能力、无需编码、提供可视化设计器的报表工具来承担。 那么,到底该如何选择一款更易于使用和维护的Word报表工具呢?通过前文分析Word报表的技术难点和开发思路,不难看出,选择一款“好用”的 Word报表工具需要满足如下功能: 分页设计 ,报表设计器必须支持分页设计模式,支持以页为单位独立的设计每页报表内容。 页眉页脚独立区域设计, 由于页眉页脚展示了报表标题和页码等信息,所以必须完整复刻,报表设计器需要保证页眉页脚的显示格式和显示位置不变。 能够无失真的打印报表, 检验报告作为Word报告常见的模板类型,不仅要存于电子档,还需要打印出来存档使用,因此,检验报告对于打印的要求极为严格,需要无失真打印。 条码支持, 不仅仅是Excel类报表,Word报告也需要嵌入条码、二维码等信息,因此在选择工具时需要支持常规的条码格式,不限于:QRCode(二维码)、Code39码、Codabar码、Code25码

译 | 将数据从Cosmos DB迁移到本地JSON文件

偶尔善良 提交于 2020-11-05 03:30:15
点击上方蓝字关注“汪宇杰博客” 原文:Azure Tips and Tricks 翻译:汪宇杰 在Cosmos DB中使用数据迁移工具 有一项重复的任务是将数据从一种数据库格式迁移到另一种数据库格式。我最近使用Cosmos DB作为数据库来存储Ignite大会发出的所有推文。然而一旦获得了数据并且不再使用Cosmos DB进行该操作,我就需要将数据转储到本地文件中保存并节省开销。本文介绍我的方法。 工具 下载并安装 Azure DocumentDB Data Migration Tool https://aka.ms/csdmtool 开工 首先确保已创建要迁移的Cosmos DB数据库和集合。 在 Cosmos DB 管理页面中打开 Keys ,并复制 Primary Connection String 将数据库名称附加到字符串的末尾。 例如 Database=cosmosdb-ignite 会被附加到刚才复制的 Key 末尾,变成 AccountEndpoint=https://mbcrump.documents.azure.com:443/;AccountKey=VxDEcJblah==;Database=cosmosdb-ignite 启动 Data Migration Tool ,在 Source Information 中选择 DocumentDB 您需要将

日计不足涓滴成河-自定义响应结果格式化器

↘锁芯ラ 提交于 2020-11-05 03:29:17
什么是响应结果 响应结果就是,在客户端向服务器发出请求后,服务器根据客户端的请求参数,给出的结果,这就是一个完整的响应结果过程。 响应的结果包含的内容非常多,主要的有 HTTP Status Code,Content-Type,Content 等等,在这里不再一一赘述。 一般情况下,在 .NET MVC 中,如果是 API 接口,默认使用 JsonOutputFormatter 对结果进行格式化。 但是也不排除某些情况下,我们需要对业务进行兼容化的设置,比如部分接口使用 xml,部分接口使用自定义的格式,需求的响应是第一要务。 常见响应结果格式化器 在 .NET(介于官方改名,咱也不叫 Core 了哈) MVC中,有几种内置的常见响应结果格式化器,他们分别是: 0、OutputFormatter(基类) 1、TextOutputFormatter(基类) 2、StringOutputFormatter 3、StreamOutputFormatter 4、JsonOutputFormatter 5、XmlSerializerOutputFormatter 由于这几种常见的格式化器的存在,我们可以放心的在 .NET MVC 中使用 请求-> 响应 过程,而不必关心他具体的实现。 来自天气预报的示例 默认的响应结果格式json private static readonly string

【JAVA】异常记录:java.net.ConnectException: Connection refused: connect

你离开我真会死。 提交于 2020-11-05 00:33:37
【JAVA】异常记录:java.net.ConnectException: Connection refused: connect 参考文章: (1)【JAVA】异常记录:java.net.ConnectException: Connection refused: connect (2)https://www.cnblogs.com/cheerfulness/p/BUG_4.html 备忘一下。 来源: oschina 链接: https://my.oschina.net/u/4438370/blog/4703036

反编译之混淆

て烟熏妆下的殇ゞ 提交于 2020-11-04 06:04:16
一 、 反编译原理是什么? C++ 、 C 语言一般不能反编译为源代码,只能反编译为 asm (汇编)语言,因为 C 较为底层,编译之后不保留任何元信息,而计算机运行的二进制实际上就代表了汇编指令,所以反编译为汇编是较为简单的。 C# 、 Java 这类高级语言,尤其是需要运行环境的语言,如果没有混淆,非常容易反编译。原因很简单,这类语言只会编译为中间语言( C# 为 MSIL 微软中间语言, Java 为 Bytecode 字节码),而中间语言与原语言本身较为相似,加上保留的元信息(记录类名、成员函数等信息)就可以反向生成源代码,注意是由反编译器生成,不会与源码完全相同,但可以编译通过。这些特性本身是为反射技术准备的,却被反编译器利用,现在的 C# 反编译器 IL Spy 甚至可以反向工程。 二、 C# 反编译破解工具 常用两种: .NET Reflector 和 ILSyp 工具。 三、 C# 反编译防范措施: ① 设置项目代码反汇编属性(弊大于利,不推荐使用,具体用法:https://www.cnblogs.com/caokai520/p/7711136.html) ② 混淆(重点讲解) 四 、 混淆代码对比 未使用混淆工具,反编译出的源码: 使用混淆工具,反编译出的源码: 优点:效果很明显, C# 代码通过混淆工具生成后,增加了很多转换过程。这使得

苦逼程序员30岁离职创业2年有什么总结

£可爱£侵袭症+ 提交于 2020-11-04 02:44:24
https://juejin.im/post/5d2d7d70e51d454fbe24a736 闲来无事聊一聊 第一次写这种人生总结类的文章,写的不好各位见谅。 事出反常必有妖 作者在30岁10个月的时候选择离职,离开广州回家乡吃点粥,我家乡是美丽的广西XX市(避免广告),离职原因在这里简单说明以下几点,好让各位吃瓜群众可以更好,更放心的吃瓜。 身体,曾经有段日子加班+娱乐(打游戏)+照顾我家刚出生的小皇帝,一天要早上7点起晚上2点睡这样,一日三餐将就。最终累垮了身体,免疫力应该出现了问题,随便吃个烧烤就全身荨麻疹,看了好几个月医生,各种药。这个时候有意识要保养身体了,果然跟前辈说的一样,“一到30岁你就懂了”。 家庭,在广州的日子基本上真的忙起来的时候,早上7点出去,晚上11点回到家,你老婆孩子都看不到你,长此以往可想而知。忙的时候让老婆带小孩回外家小住一段时间。 父母,在广州10年回家加起来的日期可能不够3个月,有一次回家看到家里很多地方蜘蛛丝都有了,父母身体老了也各种问题,突然想起“子欲养而亲不待”。 买不起广州的房 顿悟了,努力赚钱同时也要保养好自己和家人的身心健康,家庭和谐。 就是这样跟老婆商量一下,选择辞职回家。 山雨欲来风满楼 回家前就制定了几个小目标: 改善我父母的关系,我父母由于陈年往事关系一直不好 改善我自己的家庭关系,调养好我的身体 创办自己的小公司

docker 多阶段构建

…衆ロ難τιáo~ 提交于 2020-11-04 01:50:58
构建镜像最具挑战性的一点是使镜像大小尽可能的小。Dockerfile中的每条指令都为图像添加了一个图层,您需要记住在移动到下一层之前清理任何不需要的工件。对于多阶段构建,您可以在Dockerfile中使用多个FROM语句。每个FROM指令可以使用不同的基础,并且每个指令都开始一个新的构建。您可以选择性地将工件从一个阶段复制到另一个阶段,从而在最终image中只留下您想要的内容。 例如vs生成的dockerfile: FROM microsoft/dotnet:2.1 -aspnetcore-runtime AS base WORKDIR /app EXPOSE 80 FROM microsoft/dotnet:2.1 -sdk AS build WORKDIR /src COPY ["DockerWeb/DockerWeb.csproj", "DockerWeb/" ] RUN dotnet restore "DockerWeb/DockerWeb.csproj" COPY . . WORKDIR "/src/DockerWeb" RUN dotnet build "DockerWeb.csproj" -c Release -o /app FROM build AS publish RUN dotnet publish "DockerWeb.csproj" -c Release