自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (2)
  • 收藏
  • 关注

原创 飞书知识库文档批量导出(支持多系统)

【飞书文档批量导出】一个支持Windows、Mac、Linux系统的飞书文档一键导出服务,仅需一行命令即可将飞书知识库的全部文档同步到本地电脑。导出速度嘎嘎快,实测700多个文档导出只需25分钟,且程序是后台挂机运行,不影响正常工作。

2023-07-06 21:25:53 6329 8

原创 Ef Core实现数据审计与软删除

软删除的作用这里就不说了,懂得都懂。审计就是记录实体最后一次被修改的时间,修改人的id,创建的时间,创建人的id,删除的时间,删除的人的id。

2022-11-11 15:25:37 859 1

原创 学习使用gitee+jenkins实现cicd

为了能让jenkins容器内可以使用docker命令部署项目,最好按下面命令来启动容器。

2022-10-18 09:50:48 962

原创 Redis分布式集群部署(Swarm)

该脚本用于快速搭建redis集群环境,由于机器数量原因,如需使用,需要依据自己的服务器数量情况修改docker-compose.yml文件。

2022-09-26 10:24:24 1033

原创 Minio分布式集群部署(Swarm)

最近研究minio分布式集群部署,发现网上大部分都是单服务器部署,而minio官方在github上现在也只提供了k8s和docker-compose的方式,网上有关与swarm启动minio集群的文章都不完整,这里我研究了近一周终于是成功使用swarm部署成功了,并用nginx统一入口

2022-08-24 17:26:51 1422

原创 Docker-Swarm速成

使用 命令创建一个 Manager Node. 参数将 Manager Node 监听的IP设置为:.swarm 中的其他 Node 必须能访问 Manager Node 的 IP.输出包括将新节点加入 swarm 的命令。根据 标志的值,节点将作为Master或Worker加入。例:例:使用以下命令查看节点列表,节点 旁边的 表示你当前已经连接到此节点例:使用以下命令查看节点的详情:添加新的 Manager Node 到集群在另一台机器运行 命令加入已存在的集群中Manager Node

2022-06-27 15:49:01 663

原创 Docker入门的亿点点学习

前段时间花了些时间学习了亿点点docker,也算是入门了吧,顺便记了一下笔记拿出来分享给想要接触docker的兄弟们。没有服务器的兄嘚可以去腾讯云或者阿里云领取免费的试用产品嗷,如果已经领取过了,又不想买服务器的,那就去阿里云的Linux体验馆吧,一次两小时,除了每次使用都要重新下载环境以外,也还行????。阿里云Linux体验馆地址:linux体验馆 (aliyun.com)一、安装docker1.查看是否已安装docker列表如果有则先卸载yum list installed | grep

2022-02-14 22:43:12 1151

原创 Linux下使用jexus,并部署.net core项目

1.下载.net core运行时将 Microsoft 包签名密钥添加到受信任密钥列表,并添加 Microsoft 包存储库sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm安装运行时sudo yum install aspnetcore-runtime-3.12.安装jexusJexus“独立版”指的是自带.net运行时(mono),不需要在客户服务器安装mono就

2022-02-07 20:44:11 1582

原创 原来winform也可以很好看——纯手画WinForm的Alert弹框

纯手画WinForm的Alert弹框一、窗体设置设置以下属性:属性名属性值说明AutoScaleModeNone确定屏幕分辨率或字体更改时窗体如何缩放BackColor103, 194, 58背景色FontMicrosoft Sans Serif, 14.25pt字体FormBorderStyleNone标题栏和边框样式ShowIconFalse是否显示窗体图标ShowInTaskBarFalse是否显示在Windows任务栏

2022-01-14 13:45:46 1479 1

原创 WinForm上传图片到SM.MS图床

WinForm上传图片到SM.MS图床

2022-01-13 13:35:34 911

原创 用WinForm实现的仿微信聊天系统

继上次我写公司的winform打印服务后突发奇想的想写一个聊天系统,但由于对winform实在不会UI设计和美化,所以第一次做出来的很丑很简陋,就当是对SignalR的练习了。时隔一个月,我利用零零散散的时间终于完成了这版比较好看的YXChat聊天系统。.........

2022-01-05 13:10:49 4439 8

原创 Winform中使用HttpClient与后端api服务进行交互

Winform中使用HttpClient与后端api服务进行交互前端js可以使用ajax、axios发出http请求在c#中winform、控制台等可以通过WebRequest、WebClient、HttpClient

2021-12-31 11:20:01 1452

原创 Dapper的封装、二次封装、官方扩展包封装,以及ADO.NET原生封装

利用反射对Dapper进行二次封装:DapperSuperHelper<T>.cs,通过继承继承dapper的封装,我们可以即可用使用原始封装又可以使用通用的对单表的增删改查。该封装可以实现对单个表的增删改查,以及分页查询,修改、删除、查询都是基于id查询,id支持任意类型。注意:修改的时候建议先查出数据再执行修改,因为目前封装的代码无法实现只更改某个字段,暂时是全部更改,必填项必须有值。非必填,不传值,即为null。

2021-11-28 17:29:00 2686

原创 EF Core生成数据库——约束字段生成 2

EF Core生成数据库——约束字段生成一、特性约束二、数据库上下文,重写映射

2021-11-19 00:28:42 977

原创 EF Core 在ASP.NET Core中的基础使用(CodeFrist)1

1,add-migration “迁移名称” 迁移名称我们通常以你本次迁移的目的来命名,比如你新增了一个student实体“add_student_table”,修改了一个字段“update_xxx_Field”等,尽量不随便命名。2,生成迁移文件后,在执行update-database之前可以通过执行remove-migration删除刚刚生成的迁移文件,一次只能删除一个,并且只能删除你还未执行update-dabase的迁移文件5.枚举类型在生成后会自动转化为int类型

2021-11-16 22:30:23 950

原创 WinForm设置电脑开机自动启动程序

json配置文件:{ "ConnectionStrings": { "Default": "Data Source=./print_infos.db;Mode=ReadWriteCreate;Cache=Default;" }, "IsAutoBoot": false, "TopMost": true}窗体加载事件中,通过读取配置文件得到是否开启开机自动启动,给单选框选中或不选中ck_Selfstart.Checked=readJson("IsAutoBoot");

2021-11-15 20:38:03 2836 2

原创 .NET Core和SignalR实现一个简单版聊天系统——客户端2

前三篇写完了服务端和客户端百分之70的代码,接下来完成主界面的开发。SignalR聊天系统的服务端以及数据库1https://blog.csdn.net/hyx1229/article/details/121258116?spm=1001.2014.3001.5501https://blog.csdn.net/hyx1229/article/details/121258116?spm=1001.2014.3001.5501SignalR聊天系统服务端的方法 2https://blog.csdn.net.

2021-11-15 00:20:25 799

原创 .NET Core和SignalR实现一个简单版聊天系统——客户端1

前两篇写完了服务端的一些代码,接下来写winform客户端的。SignalR聊天系统的服务端以及数据库1https://blog.csdn.net/hyx1229/article/details/121258116?spm=1001.2014.3001.5501SignalR聊天系统服务端的方法 2https://blog.csdn.net/hyx1229/article/details/121277634?spm=1001.2014.3001.5501一、与服务端连接的静态类在winform的

2021-11-12 23:46:59 1779

原创 .NET Core和SignalR实现一个简单版聊天系统——服务端2

上一篇完成了服务端的数据库搭建以及登录和注册的方法。 接下来我们要完成的几个方法有:发送给指定用户,获取在线的好友列表,添加好友一、发送给指定用户方法(SendToUser)发送信息给好友我们需要有好友的连接id以及要发送的消息,在上一篇中我们定义了一个类专门用来作为发送消息使用。public class ToUserMessageDto { //好友的连接id ...

2021-11-11 23:37:51 717

原创 .NET Core和SignalR实现一个简单版聊天系统——服务端1

最近公司给了一个需求,因为业务服务是部署在linux系统内的,linux无法连接打印机,所以需要写一个winform作为客户端放到用户的windows去获取用户电脑的打印机列表。于是就用到了双工通信。一开始想用websocket,写了一大堆代码,最后却有跨域和无法连接服务端等问题,可是我把服务放到自己的服务器却又可以,由于急着交付,也没想着找bug了,赶忙又换成了SignalR,也罢websocket代码量多,还不好管理。弄完以后,就突然想写一个winform的聊天系统,于是就有了这篇文章。一、.

2021-11-11 00:12:56 4675 1

原创 .NET面试题——第13篇 数据访问部分

1. 连接数据库的字符串应该写在哪儿?写在配置文件中。2. 解释ADO.NET中的使用Connetion对象的Close()和Dispose()的区别。Close()表示关闭连接,可以重新通过Open()打开;Dispose()表示销毁,销毁后的链接不能再打开,因为ConnectionString清空了,但此时Connection对象还在。如果程序中没有向连接池发出请求说要Connection对象,Connection对象便会销毁,这也是连接池存在的意义。3. DataReader和Da

2021-11-08 21:08:56 368

原创 .NET面试题——第12篇 .NET的机制

1. 请指出.NET中所有类型的基类.Net中所有类型的基类是System.Object2. .net的错误处理机制是什么?.net错误处理机制采用try->catch->finally结构,发生错误时,层层上抛,直到找到匹配的Catch为止。3. .NET的错误处理机制是什么?一般来说,为了在.NET Framework中处理可能的错误,会采用try-catch-finally这样的代码结构,其中,try块包含了程序正常的操作部分,但可能会出现异常,catch块包含的代码用

2021-11-05 22:37:18 311

原创 .NET面试题——第11篇 c#垃圾回收

1. C#中的垃圾回收机制。GC就是垃圾回收器,一般来说系统会自动检测不会使用的对象或变量进行内存的释放,不需要手动调用,用Collect()就是强制进行垃圾回收,使内存得到及时的释放,让程序效率更高。2. c#中的三元运算符是什么C#中有一个三元运算符”?:”,语法为:条件表达式?表达式1:表达式2;该操作首先求出条件表达式的值(bool类型),为true时调用表达式1,为false时调用表达式2。其逻辑为:”如果为真执行第一个,否则执行第二个。”3. 请列出C#中几种循环的方法,并指

2021-11-04 19:17:21 505

原创 .NET面试题——第10篇 线程和进程

1. 线程和进程的区别最根本区别:进程是操作系统资源分配的基本单位,而线程是CPU调度和执行的基本单位1)在开销方面:每个进程都有独立的代码和数据空间(程序上下文),程序之间的切换会有较大的开销;线程可以看做轻量级的进程,同一类线程共享代码和数据空间,线程之间切换的开销小。2)所处环境:在操作系统中能同时运行多个进程(程序);而在同一个进程(程序)中有多个线程同时执行(通过CPU调度,在每个时间片中只有一个线程执行)3)内存分配方面:系统在运行的时候会为每个进程分配不同的内存空间;而对线程而

2021-11-02 22:11:04 320

原创 .NET面试题——第9篇 Linq

1. 委托声明的关键字是什么?delegate2. 请解释.NET采用委托实现的事件模型与JAVA中采用接口实现的事件模型有什么区别,.net中的委托概念java中没有相同的,只有事件模式是一样的,java中有一个叫Obserable接口,可以添加IEventListener,使用内部类可以构建类似于委托的概念3. C#中的委托是什么?事件是不是一种委托?C#中的委托是一种引用类型,表示具有相同方法签名的方法的引用。类似于函数指针,也就是说它们是指向函数的“引用”,更加安全。事件

2021-11-01 21:32:29 776

原创 .NET面试题——第8篇 C#方法

1. 请描述一下ref和out在方法参数传递上的异同点?Ref和outref和out:相同点:1)在实参和形参上都必须添加关键字2)在方法中对参数的设置和改变将会被保留。不同点:1)ref修饰的参数在方法调用前必须初始化,而out修饰的参数在方法调用时候可以不初始化。2)在方法中out修饰的参数必须进行赋值,而ref修饰的参数不需要。3)out修饰的参数主要用于返回值,ref修饰的参数主要用于修改。2. sleep() 和 wait() 有什么区别?sleep()方法

2021-10-31 23:04:48 187

原创 .NET面试题——第7篇 C#类和对象

1. 什么是类和对象以及关系?对象:一种具有状态(属性)和行为(方法)的编程实体,用于描述现实世界的某个具体事物。类:具用一系列对象共同特征和行为的通用类型。对象和类的关系:类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类与对象的关系就如模具和铸件的关系,类的实例化结果就是对象,而对一类对象的抽象就是类,类描述了一组有相同属性和相同方法的对象。2. 面向对象的主要思想包括什么?在面向对象中,一切皆为对象,面向对象的三大特征:1)封装:

2021-10-30 23:06:41 329

原创 .NET面试题——第6篇 C#数据类型,语法题

ps:博主的.net core学习交流群—qq裙:8311817791. 请叙述const与readonly的区别。const为静态常量,所谓静态常量就是在编译期间会对变量进行解析,再将常量的值替换成初始化的值。readonly为动态常量,所谓动态常量就是编译期间会将变量标记只读常量,而不用常量的值代替,这样在声明时可以不初始化,可以延迟到构造函数初始化。2. public static const int A=1;这段代码有错误么?是什么?const成员都是static所以应..

2021-10-29 23:38:05 183

原创 .NET面试题——第5篇 ASP.NET MVC面试题

1. MVC中的视图是用来干什么的?MVC是三个单词的首字母缩写,它们是Model(模型)、View(视图)和Controller(控制)从结构上看,可以分成三层,1)最上面的一层,是直接面向最终用户的"视图层"(View)。它是提供给用户的操作界面,是程序的外壳。2)最底下的一层,是核心的"数据层"(Model),也就是程序需要操作的数据或信息。3)中间的一层,就是"控制层"(Controller),它负责根据用户从"视图层"输入的指令,选取"数据层"中的数据,然后对其进行相应的操作,

2021-10-28 20:50:52 2867

原创 .NET面试题——第4篇 WEB后端处理(WebForm)

ps:博主的.net core学习交流群—qq裙:8311817791. Page_Onload里面一般会写什么代码?通过判断IsPostBack属性判断是否首次加载。在页面首次加载时,编写控件初始化代码和页面变量初始化代码2. 在.Net中,类System.Web.UI.Page 可以被继承么?可以,每个页的cs文件中定义的类就是继承这个类的3. 什么是Code-Behind技术。代码后置, 即HTML代码与C#代码写在不同的文件中,使得代码更整洁和便于维护.4. 请解释A.

2021-10-27 22:02:42 668

原创 .NET面试题——第3篇 WEB前端处理(WebForm)

ps:博主的.net core学习交流群—qq裙:831181779虽然webform技术目前来说已经用的很少了,但也还是有些公司在用这些老技术,多懂一点是一点,希望对大家有帮助。1. 页面之间传值的几种方式?页面间传值:1.使用QueryString变量。2.PostBackUrl()方法。3.使用Server.Transfer方法。应用程序范围内传值:1.使用Cookie对象变量。2.使用Session变量。3.使用Application对象变量。2. A.

2021-10-26 22:45:26 398

原创 .NET面试题——第2篇 WebServices

1. 简述WebServices?WebService 就是web服务。是微软主推的一种跨平台的分布式应用程序。他使用SOAP协议通讯,用XML封装数据,所以是跨平台的。任何客户端只要按照WebService发布的格式发送数据就都可以得到结果。2. 常用的调用Webservice方法有哪些?1.使用WSDL.exe命令行工具。2.使用VS.NET中的Add Web Reference菜单选项3. webapi与webservice的区别?答:webapi用的是http协议,webse

2021-10-25 21:06:18 701

原创 .NET面试题——第1篇 Session && Cookis

今天是程序员节,我决定开启一个.NET面试题的专栏,将从今天开始,每天发一篇关于.NET的面试题库,希望会对还未工作的同伴有所有帮助。博主的.net core学习交流群—qq裙:8311817791. Session有什么重大BUG,微软提出了什么方法加以解决??是iis中由于有进程回收机制,系统繁忙的话Session会丢失,可以用Sate server或SQL Server数据库的方式存储Session不过这种方式比较慢,而且无法捕获Session的END事件。2. session喜欢.

2021-10-24 22:46:01 2710

原创 EF Core之仓储模式

仓储模式带来的好处是一套代码可以适用于多个类,减少代码的复用话不多说,上代码1.新建一个仓储接口IRepositorypublic interface IRepository<T> where T:class { /// <summary> /// 添加 /// </summary> /// <param name="entity">数据实体</param>

2021-09-17 22:33:57 4515 2

原创 .Net Core中如何实现批量依赖注入——反射+特性

在.net core中使用依赖注入是很常见的,最常见的我们会使用以下三种services.AddScoped<TestIBLL, TestBLL>();services.AddSingleton<TestIBLL, TestBLL>();services.AddTransient<TestIBLL, TestBLL>();当我们的业务层内容不多的时候这样写没有什么问题,但是加入有100个BLL呢,那样一个一个加会很麻烦,每加一个就要多写一次,而且容易忘.

2021-09-13 16:14:04 2558 2

原创 存储过程分页——单表分页,任意表分页,EF调用分页存储过程

一、单表分页if exists(select * from sysobjects where name='proc_movies') drop proc proc_moviesgocreate proc proc_movies@pagesize int --每页显示的条数,@pageindex int --页码,@count int output--输出总条数,@pagecount int output--输出总页数asbegin

2021-07-21 11:33:05 364 1

原创 简单的权限管理系统——数据库设计和实现

一、首先我们需要有三张基础表1.用户表(Account):包含用户id、登录名、密码、手机号、邮箱、创建时间、账户状态(停用或启用)、备注。2.角色表(Roles):不同的角色代表了不同的权限, 字段:角色id、角色名、角色信息(不是必要)、角色状态(停用或启用)、备注。3.菜单表(Menus):不同的菜单进入的页面具有不同的功能,字段:菜单id、菜单名称、跳转url、是否菜单(因为有些地方可能会把添加模块作为一个单独的页面,而又不希望其直接出现在系统的侧边栏里面,当然我一般使用弹框做.

2021-07-16 15:26:27 8491 3

原创 (二)、手把手教你配置.NET Core 微服务——接口整合测试(swagger)

目录1.NuGet中下载包2.Starup.cs中配置3.显示注释需要加的配置1.NuGet中下载包在需要配置的项目,Nuget安装Swashbuckle.AspNetCore包2.Starup.cs中配置要注意的是,Configure中的使用,需要和中间件注册swagger的文档名称一致,否则会找不到文件,也就是这里的"One"public void ConfigureServices(IServiceCollection services)

2021-07-04 14:27:09 528

原创 (一)、手把手教你配置.NET Core 微服务,前后端分离项目——跨域和网关(Ocelot)

1.首先新建三个.NET Core下的API项目ApiGetWay:将作为网关使用,可以将不需要用到的Controller文件夹和实体类删掉APIServiceOne:服务一,将做api使用APIServiceTwo:服务二,做api使用

2021-06-30 16:16:06 1342 1

原创 .NET、.NET Core的跨域配置

.NET FrameWork下的跨域配置在api项目中1.在web.config文件中,找到system.webServer节点,添加httpProtocol节点,注释<system.webServer><!--添加httpprotocol节点--> <httpProtocol> <customHeaders> <add name="Access-Control-Allow-Credentials" value="true"

2021-06-27 17:14:38 600

用WinForm实现的仿微信聊天系统(YxChat源码)

用WinForm实现的仿微信聊天系统,文章链接https://blog.csdn.net/hyx1229/article/details/122318324

2023-06-05

Redis-Swarm分布式集群部署脚本

该脚本用于快速搭建redis集群环境,由于机器数量原因,如需使用,需要依据自己的服务器数量情况修改docker-compose.yml文件。

2022-09-26

(.Net Core WebApi+SignalR+winform聊天系统)ChatRoom.rar

.Net Core WebApi+SignalR+winform实时通信,私人聊天系统。已有功能:添加好友,好友上线通知,切换好友聊天,登录,注册, 支持挂载远程服务器实现超级低配版qq的功能。支持局域网内互发,上课的时候可以偷偷聊天哦。

2021-11-15

仓储模式,efcore之仓储模式设计+分页.rar

适用于ddd领域驱动模型设计,ef之仓储模式+分页帮助类

2021-09-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除