YARP实现Dapr服务调用的反向代理

楔子 公司即将新开项目,打算用点时髦的技术,需要探探路。之前没做过微服务项目,没有技术栈方面的积(负)累(债), 干脆就上微软的分布式运行时Dapr......嗯......用来服务发现,然后等测试用的服务开发好了,就开始纠结用啥反向代理/网关,nginx都没怎么用过,更别提其他复杂网关了,这时看了 ... »

后续来啦:Winform/WPF中快速搭建日志面板

后续来啦:Winform/WPF中快速搭建日志面板 继昨天发文ASP.NET Core 可视化日志组件使用(阅读文章,查看视频)后,视频下有朋友留言 “Winform客户端的程序能用它不?”,微信也有朋友问能否嫁接到WPF上,站长今早尝试了,是可以的! 原理是将Winform或WPF 应用程序,宿主 ... »

ASP.NET Core可视化日志组件使用

前言 今天站长推荐一款日志可视化组件LogDashboard,可以不用安装第三方进程,只需要在项目中安装相应的Nuget包,添加数行代码,就可以实现拥有带Web页面的日志管理面板,十分nice哦。 下面是官方介绍: 官方文档地址:https://doc.logdashboard.net/ LogDa ... »

如何实现定时推送?

一、概要 在工作当中遇到了一个需要定时向客户端推送新闻、文章等内容。这个时候在网上搜了很久没有找到合适的解决方案,其实能解决这个问题的方案有很多比如说用到一些大厂贡献的xxMQ中间件之类的,确实能解决问题。但是目前项目比较小根本用不上这么重的框架,在偶然的看到了一位大佬写的文章提供了一个非常不错的思 ... »

.NET Core3.1 Dotnetty实战系列视频

一、概要 由于在.net的环境当中对dotnetty相关资料相对较少,所以这里主要分享一个dotnetty使用教程希望能帮助到正在使用这套框架的开发者们。虽然这套框架已微软官方已经不在维护,但是这套框架里的设计是相当不错的通过阅读源码能学习到很多的。 一开始为什么会使用这套框架呢,在做技术选型的时候 ... »

C# WebView2 在你的应用中使用Chromium内核

什么是WebView2? Win10上对标Edge浏览器 Chromium内核 简单的可视为WebBrowser组件的升级版 如何使用WebView2? 官网下载 WebView2 RunTime VS2019 NuGet搜索 WebView2,安装最新版即可 WebView2 具体使用技巧 引入 ... »

C#异步编程由浅入深(二)Async/Await的作用.

考虑到直接讲实现一个类Task库思维有点跳跃,所以本节主要讲解Async/Await的本质作用(解决了什么问题),以及Async/Await的工作原理。实现一个类Task的库则放在后面讲。首先回顾一下上篇博客的场景。 class Program { public static string GetM ... »

C#中protobuf-net的编码结构及使用方法

protobuf-net是用于.NET代码的基于契约的序列化程序,它以Google设计的“protocol buffers”序列化格式写入数据,适用于大多数编写标准类型并可以使用属性的.NET语言。 protobuf-net可通过NuGet安装程序包,也可直接访问github下载源码:https:/... ... »

(原创)高DPI适配经验系列:(二)按DPI范围适配

一、前言 一个软件,往往会用到位图资源,比如图标、图片、水晶按钮等。 在使用了位图资源后,就不能对任意DPI都进行适配,因为这样适配的代价太大了。 像Win10的缩放比例可以由100%-500%,如果全部适配的话,仅一个图标就是制作401个不同分辨率的版本,时间成本和空间成本上开销都太大了。同时,在 ... »

limanmanExp数据库审计设计思路与重要代码

目的 在代码审计的时候经常会想看看某个访问会触发哪些数据库操作。目前已知的数据库审计有多家大型厂商的设备,还有seay源码审计系统中的数据库监控1.0 但是、开源的已知的就只有seay源码审计系统中的。而且因作者跑路。不再更新,能够允许监控的mysql数据库版本仅仅支持到5.1。 所以,自行查找、翻 ... »

(原创)高DPI适配经验系列:(一)缩放比例与DPI对应关系

一、前言 当下,2K分辨率已成为主流标配,3K、4K也已经广泛应用。 在屏幕尺寸不变的情况下,高分辨率也就意味着高DPI,对于桌面程序而言,除了先天就支持高DPI的框架外(如UWP、Electron等),大部分桌面程序如果不进行高DPI的适配,往往会出现界面模糊、控件错位、文本显示不全等问题。 目前 ... »

热更新基础--AssetBundle学习笔记

一.简介 AssetBundle简称AB包,特定平台的资产压缩包(包括模型、贴图、预设体、音效、材质球等资产)。 作用:Resources下的资源只读且打包后不可修改,而AB包存储位置自定,后期可以动态更新;AB包压缩后节省空间;可以进行资源热更新和脚本热更新。 二.官方打包工具AssetBundl ... »

XML数据持久化学习笔记

一.XML基础语法 1.XML结构:XML是一种树结构的文本 2.XML注释:格式:<!--在其中书写注释-->,在注释中可以单行注释也可以多行注释 3.固定内容:<?xml version="1.0" encoding="UTF-8"?>版本和编码信息 4.基本语法:<root>...</root ... »

NetCore的缓存使用详例

关于我 作者博客|文章首发 缓存基础知识 缓存可以减少生成内容所需的工作,从而显著提高应用程序的性能和可伸缩性。 缓存最适用于不经常更改的 数据,生成 成本很高。 通过缓存,可以比从数据源返回的数据的副本速度快得多。 应该对应用进行编写和测试,使其 永不 依赖于缓存的数据。 ASP.NET Core ... »

.NET Core 环境变量详解

软件从开发到正式上线,在这个过程中我们会分为多个阶段,通常会有开发、测试、以及上线等。每个阶段对应的环境参数配置我们会使用不同的参数。比如数据库的连接字符串,开发环境一般我们都是连接的测试库。以前这种情况通常是 COPY 两个同名的配置文件来进行处理,然后在本地就使用本地的配置,生产环境就使用生产... ... »

C#异步编程由浅入深(一)

一、什么算异步? 广义来讲,两个工作流能同时进行就算异步,例如,CPU与外设之间的工作流就是异步的。在面向服务的系统中,各个子系统之间通信一般都是异步的,例如,订单系统与支付系统之间的通信是异步的,又如,在现实生活中,你去馆子吃饭,工作流是这样的,点菜->下单->做你的事->上菜->吃饭,这个也是异 ... »

PureMVC学习笔记

一.简介 PureMVC是基于MVC思想和一些基础设计模式建立的一个轻量级的应用框架,免费开源,最初是执行的ActionScript 3语言使用,现在已经移植到几乎所有主流平台。PureMVC官方网站:http://puremvc.org,框架及其响应的说明文档直接在官网中下载即可。 二.基本结构 ... »