搜索结果:C#

为您精心筛选出最相关的优质内容

找到 173 篇相关文章
显示 173 个搜索结果
Android开发 0%

Android开发:解决在Linux上提示-dev-kvm-device-permission-denied问题

...-studio-dev-kvm-device-permission-denied) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资
AspNetCore 0%

梦想家装平台开发记录,Asp-Net-Core上手实践

# DreamingHome Dreaming Home 梦想家,家装平台 ## EF Core概念 - `Model`: 数据模型,一个普通的C#类 - `DbContext`: 与数据库沟通的桥梁,一个数据库对应一个`DbContext` ## 注册`EF Core`服务 ```c# services.AddEntityFrameworkSqlite() .AddDbContex...
AspNetCore 0%

跨平台框架AspNetCore开发实践杂谈

...端分离,我都只做WebApi,而且还是很小的项目(课设级别),生产环境用最多的应该是Python的Django框架,这次我把一个之前做的Django项目用AspNetCore重写一遍,性能提升了不少,C#的性能真不是盖的,AspNetCore这个框架的性能也很不错,榜上有名的(WebApi),虽然MVC排不上名,但是性能依旧甩Django很多,Django每次上线前就做各种性能优化,恐怖,不过性能太好...
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:1.MVC入门篇

...短路 - 可以传出响应 - 中间件是按照添加顺序执行的 通过在`Configure`中添加参数`ILogger logger`引入Asp.Net Core自带的日志组件。 ```c# public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILogger logger) { ...
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:2.MVC视图、模型、持久化、文件、错误处理、日志

...据) - Route Values (路由中的值) - Query String (Get的查询字符串) ### 模型验证 #### 1.设置模型 首先在Model中加入验证属性,如: ```c# public class Student { public int Id { get; set; } [Display(Name = "姓名"), MaxLength(4, Err...
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:3.使用SignalR实时通信框架开发聊天室

...分配给同一个服务器,具体以后需要的时候再研究。 ## 开始使用 我要做的是一个聊天室,所以只需要写一个简单的服务就可以了。 首先要创建AspNetCore项目,注册SignalR服务: ```c# public void ConfigureServices(IServiceCollection services) { services.AddControllers(); ser...
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:4.Blazor-WebAssembly入门

...结尾)。 然后再看看wwwroot文件夹: ![](8869373-512cc757a7f22b04.webp) 可以看到只有css,没有js文件夹,因为blazor要做的事情就是要把js代码换成C#代码,其实就是让后端开发去做前端开发。 (PS:node就是让前端去做后端,历史总是惊人的相似hhh) 先看看它的代码是怎么写的,后面再具体介绍。 ## 例子代码 这是官方的例子,点击按钮之后可...
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:5.构建和部署

...www.cnblogs.com/toutou/p/supervisor.html) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:WebApi开发实践

...:false,"FirstItemOnPage":1,"LastItemOnPage":10} ``` 然后一个简单的,不带过滤、搜索、排序等功能的controller获取列表方法是这样: ```c# [HttpGet] public ActionResult> GetList(int page = 1, int pageSize = 10) { var p...
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:身份认证入门

...laimsIdentity`的属性`RoleClaimType`会告诉ASP.NET Core哪个`Claim`存储了用户的角色信息。 比如某个Controller需要管理员角色才能访问: ```c# [Authorize(Roles="管理员")] ``` 可以指定多个角色都可以访问,多个角色间用逗号分隔: ```c# [Authorize(Roles="人力经理,财务")] ``` 如果...
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:部署,早知道,还是docker,以及一点碎碎念

...Core目前还处在摸索阶段,好用是好用,就是在工作中用得还不够多,不够熟悉,加上之前折腾Django的经历让我尝到了动态语言开发的甜头,所以不会短时间把团队的技术栈全部迁移到NetCore上去,毕竟会C#的人还是不够多,新招进来的应届生来现学也有不低的门槛,项目进度也禁不起这种折腾… 我还是很喜欢微软的这套技术栈,它真的很好用,目前以及后续的小项目毫无疑问都会选择这套东西,但对于提高多少生产力,我目...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:使用NPM和gulp管理前端静态文件

...pFile`,Tasks栏下拉可以看到我们定义好的任务,直接添加就完事了 ![image-20220217174557405](image-20220217174557405.png) 添加完就像C#项目一样,可以直接执行 ## razor里使用 使用`Gulp.js`收集静态文件到`wwwroot`目录后,razor文件里的引用需要小小的改一下,如下: 引用CSS文件 ```html <...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:使用RateLimit中间件实现接口限流

...t 组件可以配置全局的限流,也可以配置对某个IP地址(段)进行限流。 ## 配置服务 为了从 `appsettings.json` 读取数据,先在 `Program.cs` 注册配置服务 ```c# builder.Services.AddOptions(); ``` 然后写个扩展方法来注册 RateLimit 的相关服务 引入命名空间 ```c# using AspNetCoreRate...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:接口返回json对象出现套娃递归问题

...^ Ĭ ) 好吧,先进入正题…… 有一个关于WebApi序列化的问题,跟设计有关,但在涉及到关联字段的时候经常会遇到。 ## 实体类 先看看实体类定义,限于篇幅,只保留几个关键字段。 ```c# public class CrawlTask : EntityBase { /// /// 爬虫名称 /// public ...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:集成Hangfire实现异步任务队列和定时任务

...Python写的数据采集平台往.Net Core上迁移,原本的采集任务使用多进程+线程池的方式来加快采集速度,使用Celery作为异步任务队列兼具定时任务功能,这套东西用着还行,但反正就折腾嘛,直接上C#~ > 本文记录 Hangfire 在实际应用里的用法,我发现网络上找到的大部分文章都是用 Hangfire 的异步任务输出个 Hello World,然后就没了。我实在不知道这样的文章写了有什么意...
C# 0%

C#中AES加密的实现

...Columns`—为了充分混合矩阵中各个直行的操作。这个步骤使用线性转换来混合每内联的四个字节。最后一个加密循环中省略`MixColumns`步骤,而以另一个`AddRoundKey`取代。 ## C#代码实现 定义默认密钥向量 ```c# private static byte[] _aesKetByte = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD...
C# 0%

C#中的Attribute与Python-TypeScript的装饰器是同个东西吗

## 前言 最近成功把「前端带师」带入C#的坑~~(实际是前端带师开始从cocos转unity游戏开发了)~~ 某天,「前端带师」看到这段代码后问了个问题:[这个是装饰器]? ```c# [HttpGet] public Response Get() { return ... } ``` 我第一反应觉得不是,这玩意在C#中叫“特性”(英文名Attribute,下文统称为特性),在Jav...
C# 0%

C#学习(一)委托的概念和使用

## 前言 C#学习系列是根据我以前的笔记整理出来复习,顺便发一下文章做个记录。 先引用一个介绍: > C# 中的委托(Delegate)类似于 C 或 C++ 中函数的指针。委托(Delegate) 是存有对某个方法的引用的一种引用类型变量。引用可在运行时被改变。 > 委托(Delegate)特别用于实现事件和回调方法。所有的委托(Delegate)都派生自 System.Delegate 类...
C# 0%

C#学习(三)深入理解委托、匿名方法和-Lambda-表达式

...本文中将完成一次关于委托的旅行,全面阐述委托及其核心话题,逐一梳理委托、委托链、事件、匿名方法和 Lambda 表达式。 ## 委托的定义 了解委托,从其定义开始,通常一个委托被声明为: ```c# public delegate void CalculateDelegate(Int32 x, Int32 y); ``` 关键字 delegate 用于声明一个委托类型 CalculateDel...
C# 0%

C#学习(二)匿名方法和委托的多种使用方式

...ting),也叫组播。 ### 事件 事件(Event) 基本上说是一个用户操作,如按键、点击、鼠标移动等等,或者是一些提示信息,如系统生成的通知。应用程序需要在事件发生时响应事件。例如,中断。 C# 中使用事件机制实现线程间的通信。 事件在类中声明且生成,且通过使用同一个类或其他类中的委托与事件处理程序关联。包含事件的类用于发布事件。这被称为 发布器(publisher) 类。其他接受该事件的...
C# 0%

C#实现生成Markdown文档目录树

## 前言 之前我写了一篇关于C#处理Markdown文档的文章:[C#解析Markdown文档,实现替换图片链接操作](https://www.cnblogs.com/deali/p/16027455.html) 算是第一次尝试使用C#处理Markdown文档,然后最近又把博客网站的前台改了一下,目前文章渲染使用Editor.md组件在前端渲染,但这个插件生成的目录树很丑,我魔改了一下换成boo...
C# 0%

C#实现解析Markdown文档并处理图片链接

...已经写了16篇了,然后上3月之后工作有点忙~~加上有点沉迷原神~~,然后进度就暂时慢下来了 事实证明做什么事情一旦停下来就会产生惰性,于是停了这么久,我终于下定决心继续更新! 这次开发的博客用的是C#语言,搭配.netcore技术栈;前端继续用我比较熟悉的Bootstrap做布局,然后稍微折腾一下;管理端用的是Vue…… 过程中总能遇到一些技术问题,除了在博客开发笔记系列里记录,还是把一些普适性的...
C# 0%

C#爬虫开发小结

## 前言 2023年以来一直很忙,临近春节,各种琐事更多,但鸽了太久没写文章总是不舒坦,忙中偷闲来记录下最近用C#写爬虫的一些笔记。 爬虫一般都是用Python来写,生态丰富,动态语言开发速度快,调试也很方便 但是 我要说但是,动态语言也有其局限性,笔者作为老爬虫带师,几乎各种语言都搞过,现在这个任务并不复杂,用我最喜欢的C#做小菜一碟~ ## 开始 之前做 [OneCat](https...
C# 0%

C#爬虫:CatSpider#-开发笔记

...美滋滋。不过有些网站的采集比较麻烦,有反爬机制,这方面就不如python了,因为python的轮子很多,我直接找别人做的整合一下就好了,毕竟爬虫不是本项目的主要内容,不能浪费太多时间和精力。那么怎么把C#和python的模块整合在一起呢,emmm当然是RPC了,不过在python爬虫里面加个`Flask`来调用也行,不过数据交换性能就要打很大折扣了。 有点偏题了,继续记录`.net core`爬虫~...
C# 0%

C#移除字符串中的不可见Unicode字符

...racle无法正确解析,所以导致了插入数据的时候错乱了 所以破案了,就是系统前台使用人员,在输入的时候不知道咋滴搞了个Unicode字符进去… 解决方法就是我这边采集的时候再做一次过滤… 没想到C#要搞个过滤 Unicode 还挺折腾的,资料太少… 最后还是参考了Java的资料搞的。= =... ## 代码 代码如下 写了个扩展方法来过滤 ```c# public static cla...
C# 0%

C#高性能数组拷贝实验

## 前言 昨天 wc(Wyu_Cnk) 提了个问题 > C# 里多维数组拷贝有没有什么比较优雅的写法? 这不是问对人了吗?正好我最近在搞图像处理,要和内存打交道,我一下就想到了在C#里面直接像C/C++一样做内存拷贝。 优雅?no,要的就是装逼,而且性能还要强🕶 ## 概念 首先澄清一下 C# 里的多维数组 (Multi-dimensional Array) 是这样的 ```c# ...
C# 0%

System.Text.Json使用中的几个常见问题

...ASCII 的字符进行转义,这就会导致很多时候我们的一些非 ASCII 的字符就会变成 `\uxxxx` 这样的形式,很多场景下并不太友好,我们可以配置字符编码来解决被转义的问题。 例子: ```c# var testObj=new { Name = "测试", Value = 123 }; var json = JsonSerializer.Serialize(testObj); Co...
C# 0%

在.NETCore(C#)中使用EPPlus-Core导出Excel文档

## 首先安装 直接NuGet安装就行,贼方便。 ## 使用方法 有很多种办法导出,本文只介绍最方便,代码最少的那种。 首先定义一个实体类,例如: ```c# public class OutputData { public string Address { get; set; } public int Title { get; set; } public int D...
C# 0%

在.NetCore(C#)中使用ODP-NET-Core+Dapper操作Oracle数据库

...essage); } } } ``` 这就是执行`select * from table_name`这条SQL语句的代码,有点长…… 吐了 再看看执行存储过程的… ```c# var connStr = $"DATA SOURCE=127.0.0.1/db_name; PASSWORD=password; PERSIST SECURITY INFO=True; USER ...
C# 0%

在.NetCore实现图片缩放与裁剪-基于ImageSharp

...行拉伸~ ~~PS:本来想画个图表达一下思路,不过没找到趁手的画图工具(Draw.io:不要看我)~~ ## 实现 首先读取图片 很简单,传入图片路径即可 当然也可以用流的方式读取 ```c# using var image = Image.Load("imagePath"); ``` 然后就是根据图片的大小各种情况来进行缩放和裁剪 在网上查到的很多博客用的代码都是类似`image.R...
C# 0%

方便的C#-Json库:Json-Net

## 官网 Json.Net用法很简单,本文也只是搬运了一下官网的例子,更多用法可以查看官网,一分钟就能上手。 https://www.newtonsoft.com/json ## 使用例子 ### 对象序列化 ``` Product product = new Product(); product.Name = "Apple"; product.Expiry = new DateTime...
Desktop 0%

聊聊几个相见恨晚的WinForm界面库

...,充其量只能作为偶尔闲暇时的小玩具了~ 时代的车轮滚滚向前,终将桌面应用碾得粉碎… ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
ORM 0%

在FreeSQL中实现「触发器」和软删除功能

...个ORM真的好用,文档也很完善,这里记录一下两个有关「触发器」的功能实现 ## 修改实体时记录更新时间 模型代码 我的模型都是基于这个 `ModelBase` 派生的,自带三个属性字段 ```c# public abstract class ModelBase : ISoftDelete { public DateTime CreatedTime { get; set; } = Dat...
DevOps 0%

ExceptionLess的安装、配置、使用

...000", "ApiKey": "Rajo99MksQTS6zZK81238jTkNHNOQP33A3iW45JC" } ``` 然后编辑`Program.cs`,添加服务和中间件 ```c# builder.Services.AddExceptionless(builder.Configuration); app.UseExceptionless(); ``` 集成这一步就搞定了 #...
DevOps 0%

Sentry的安装、配置、使用

...程推测出的,理解得不深如果有错误请大佬们指正~) 所以对于AspNetCore3.1项目,修改`Program.cs`文件,添加一行代码 `webBuilder.UseSentry();` ```c# public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) ...
Django 0%

Django-Filter介绍与刁钻需求的实现方法

....0.1/require/?region=1&require_status=1,2,3,4,5,6,7,8,9 ``` ## 吃瓜 最后吃个瓜,今天Python之父发推说加入微软了,Delphi/C#/TypeScript之父在评论区发了贺电,哈哈哈 ![](8869373-f1409dc76e48af3a.webp) ## 参考 - Stack Overflow问题:https://sta...
Django 0%

Django-Import-Export插件关于外键的处理

...0/article/details/104717236 ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~ - 博客园:[https://www.cnblogs.co...
Django 0%

Django中「强行」使用MVVM设计模式

...wModel与Django结合解决方案,如果大家有更好的解决方案可以留言一起探讨~ ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Django 0%

Django中间件之实现Admin后台IP白名单

...oject.com/en/3.0/topics/http/middleware/) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Django 0%

Django快速开发实践:Drf框架和xadmin配置指北

...是闹着玩的,了解一门技术之后好好深入学习提高比整天跟风搞些花里胡哨的有用得多了…… 不过最近看了很多net core的博客和知乎问题,我还是看好这个net core5的未来,接下来花点时间继续学我的C#,虽然工作可能用C++比较多……(逃 ## 欢迎交流 交流问题请在微信公众号后台留言,每一条信息我都会回复哈~ - 微信公众号:画星星高手 - 打代码直播间:[https://live.bili...
Django 0%

Django数据导入导出神器django-import-export使用

...en/latest/installation.html ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Django 0%

Django的信号机制入门

...于微信小程序的登录、支付接入的,不是什么很难的东西,但是第一次用的话处处充满坑…… ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Django 0%

一小时完成后台开发:DjangoRestFramework开发实践

...决95%的疑问,加上Django和python自带的快速开发生产力,写起来太爽啦~ ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料
Django 0%

比Django官方实现更好的分页组件+Bootstrap整合

...leo/django-pure-pagination/ ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~ ![](8869373-95124b6a85ede43d....
Django 0%

给Django-Admin添加验证码和多次登录尝试限制

...ocs.io/en/latest/advanced.html#rendering) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Django 0%

给Django的Admin添加自定义Action-并移除需要选择对象的限制

...%AE%9A%E4%B9%89%E6%8C%89%E9%92%AE-action) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Django 0%

聊聊Django应用的部署和性能的那些事儿

...堆配置,反正是云服务随便扩容(公司服务器和钱都管够哈哈哈)以后按需优化…溜了哈哈哈 ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Django 0%

配置Django-TinyMCE组件支持上传图片功能

...](https://www.jianshu.com/p/7f837c76b106) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
0_Django基础知识 0%

Django应用中的静态文件处理

...同时关闭Django的Debug模式,这样静态文件就都会使用nginx来提供访问~ ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
0_Swagger与drf-yasg接口文档系列 0%

解决drf-yasg中的SwaggerAPI无法正确分组问题

.../github.com/axnsan12/drf-yasg/issues/489) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
项目开发小结系列 0%

项目完成小结-11月新项目-诊所项目

... 下面,让用户(开发者)自行决定这部分代码是否使用。 ## 前端 前端使用React+TypeScript,开发体验还可以,尽管之前经常吐槽TypeScript,但熟悉之后还是能愉快使用的,毕竟和C#同一个作者,质量有保障~ 虽说Taro坑很多,组件库质量也不高 但… 没有的组件,就自己造轮子! 好吧,在造轮子这件事上,我把自己坑了一下… 我自己做了个日历组件,不得不说,日历组件确实有点小复...
Flutter 0%

使用Flutter设计一个好看的_我_页面

...强人意吧~~(没有UI,只能自己凑合搞一搞hh)~~ ## 后话 时隔半年多,重新来搞Flutter,才发现Flutter已经更新到2.x版本了,新版dart语言也加了空安全特性,离kotlin/c#又进了一步,主流的第三方库也都跟进了,都出了null safety版本的库,总体开发体验还是可以的~ 不过做完的成品,给我的感觉,在性能上还是不如原生,很难做到像原生一样的丝滑。不过这flutter...
Flutter 0%

有模有样解决Flutter里Webview无法访问HTTP页面的问题

...uanlan.zhihu.com/p/77083307 ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~ ![](8869373-95124b6a85ede43d....
Java 0%

JavaWeb开发---使用IDEA创建Servlet程序

...(8869373-cc5f316238045270.webp) ## 后记 作为一个写习惯了`PHP`和`Python`的人来说,刚刚转到`Java`还是有各种不适应的,还好Java和我最喜欢写的C#语法很相近,所以上手也不是很难,就是各种环境配置好麻烦= =... ## About ## ![](JavaWeb开发---使用IDEA创建Servlet程序.assets\8869373-901...
Java 0%

深入Jar包:Gradle构建可执行jar包与访问jar包中文件夹与文件

...的形式是 `media/hello.wav` 这样的。 ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~ - 博客园:[https://www.cnblogs.co...
Kotlin 0%

使用Kotlin搭配Springboot开发RESTFul接口

...html) Java代码自行脑补成kotlin的即可~ ## 构建与部署 最后是要把我们写好的项目部署到服务器上,使用以下部署,可执行jar包配合docker,比python方便多了~ (Go和C#表示论部署在座的各位都是辣鸡hhhh) ### 构建可执行的jar包 执行以下命令: ```bash gradlew bootJar ``` 会在`build/libs`目录下生成一个jar包...
Kotlin 0%

使用Kotlin搭配Springboot开发RESTFul接口(二)自定义配置、跨域、分页、ViewModel

...lable++ } } } ``` 这样就OK了,一次测试通过,Kotlin好用就完事了 ## 总结 Springboot香是挺香的,Kotlin这语言也挺好用,就是比起C#还是差点感觉,JVM限制了它的发挥,不过也是借着JVM的生态,kotlin才能上位,毕竟和Java可以无缝互调访问,这个体验,大家懂的,以后的Java项目也许都可以慢慢转Kotlin(并不) 只不过...
系统配置 0%

修改Linux系统的鼠标滚轮的速度

...2014/2/2/systemd-user-daemons.42631.html) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Linux评测 0%

无需折腾的Linux发行版:Manjaro体验与配置笔记,开箱即用-真香!

...](https://www.jianshu.com/p/0098ee403e77) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Production 0%

【开源】发布一个基于JavaFX的小游戏:CrazyAlpha

...实现接口功能一般都是通过传入实现某个事件接口的匿名类(当然在Java8里可以使用lambda表达式),不过这也不是什么大问题,这些问题都有其他方法可以解决,只不过写起来比较繁琐而已。可能我之前写习惯了C#,所以写Java代码的时候总是不由自主拿来对比,但是其实这两种语言的可对比性不高,因为出生的年代都不一样,C#在语言设计上确实是比Java高明得多,近年来Java的新版本或有或无的在模仿C#多年前的特...
PyQt 0%

PyQt5开发实践(一、准备篇)

...gle。so,这本书只能说是矮子里挑高个,差强人意吧~ ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~ ![](8869373-95124b6a85ede43d....
PyQt 0%

数据分析必备技能!3分钟教会你如何在PyQt中画好看的图表

...l](https://zmister.com/archives/187.html) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Python 0%

Python踩坑:类与类对象类型参数传递与使用

...点的项目,例如搭建一个Web应用,就会遇到一些问题,一般缺乏经验的人都会陷入某些坑中。= =... ## 坑 先说坑,函数参数类型是一坑,类与类的对象这又是一坑。 虽然之前用其他静态类型语言(例如C#/Java)的时候都搞明白了的,但是换了个动态类型的Python,总会有点令人疑惑。 ## 例子 让我用代码来举例子。 首先定义两个类,都继承自内置的 `Exception` 类,说明这两个类是...
Python 0%

使用Python+FFMPEG实现视频分割与合并

...om/blog/2020/01/ffmpeg.html ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~ - 博客园:[https://www.cnblogs.co...
Python 0%

关于Python的异常处理

... 尽量使用内置的异常处理语句来替换try/except语句,比如with语句,getattr()方法。 ## 抛出异常 raise 如果你需要自主抛出异常一个异常,可以使用raise关键字,等同于C#和Java中的throw,其语法规则如下。 ```python raise NameError("bad name!") ``` raise关键字后面可以指定你要抛出的异常实例,一般来说抛出的异常...
Python 0%

我用Qt和Python开发了一个视频合并工具

... 还有一点,单文件打包出来600多m,太大了无法运行,所以还是不要打包单文件的,这样大小虽然有1G多,但是用7z压缩一下就200多m,还可以接受,hhh。 ## 总结 PyQt勉强可以开发吧,和C#这些那没得比,但是跨平台还是不错的,就是打包之后太大了。 相关代码已经开源:[https://github.com/Deali-Axy/VideoMerge](https://github.com/...
Web前端 0%

React + TypeScript + Taro前端开发小结

...门 - 从js的角度理解 react:https://github.com/coppyC/blog/issues/16 ## 关于TypeScript 第一次用TypeScript,不过作为日常用C#写后端的人,又处处是熟悉的感觉~ 反正比JS好用一万倍就是了,类型提示真是太棒了 目前用得不深,后续有什么相关的我再写写博客记录一下。 ### 参考资料 - 探索 TypeScript 类型注...
Web前端 0%

使用JS模拟按键输入的踩坑记录

...de的网站:https://keycode.info/ ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~ ![](8869373-95124b6a85ede43d....
Web前端 0%

配置Chrome支持网页内的frame跨域

...17568917/a-1020000017570521 ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
Windows 0%

Windows设置Pageant开机自动启动并且加载秘钥

...\id_rsa.ppk" ``` 点确定保存就完事了 ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~ ![](8869373-95124b6a85ede43d....
推荐系统 0%

抖音头条为什么这么火?揭秘推荐系统原理之协同过滤算法

...是协同过滤,但这个算法是入门推荐系统必备的,基本上简单的系统用上协同过滤就足够啦。 ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
推荐系统 0%

知乎和抖音为什么那么让人上瘾?推荐系统工作原理初探

...统工作流程 ![](8869373-8cbf91080510face.webp) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~
算法/机器学习 0%

多个约束条件下的二维装箱问题——寻找《开罗拉面店》最优布局之代码解析(一)

## 介绍 本代码是用C#实现的。在开始代码解析之前,先把要用到的数据贴出来: | 店铺id | 店铺宽度 | 店铺高度 | 入口位置 | | ------ | -------- | -------- | -------- | | 1 | 9 | 6 | (5,6) | | 2 | 5 | 6 | (1,6) | | 3 ...
算法/机器学习 0%

多个约束条件下的二维装箱问题——寻找《开罗拉面店》最优布局之代码解析(三)

...到的原始基因;其次为了应用精英保存策略、择伏分配等,需要记录最优个体的相关信息;同时在计算交叉变异概率的时候,需要用到求平均适应值的方法,所以为了简化计算,储存每个个体的适应值是很有必要的。 ```c# /// /// 个体列表 /// public List ind; /// /// 原始基因 ///
算法/机器学习 0%

多个约束条件下的二维装箱问题——寻找《开罗拉面店》最优布局之代码解析(二)

...和随机旋转操作;性状则是进行这两个操作后得到的基因再通过BL算法或BL算法加强版得到的一个可行解,也就是一个店铺布局。因此,个体类应该储存的属性应该有性状、基因片段的编码、区域的宽度和高度。 ```c# /// /// 性状 /// public List character; /// /// 地区宽度 ///
算法/机器学习 0%

多个约束条件下的二维装箱问题——寻找《开罗拉面店》最优布局之代码解析(五)遗传算法解析

...953432d5ee9cfe9.webp) 8、更新两个新种群的最优个体 9、若新种群最优个体的适应值小于旧种群最优个体适应值,则用旧种群的最优个体替换新种群的最劣个体。 ## 核心代码 ```c# /// /// 遗传算法 /// /// 店铺数据位置 /// 地区宽...
算法/机器学习 0%

多个约束条件下的二维装箱问题——寻找《开罗拉面店》最优布局之代码解析(四)交叉算子解析

...”对应的数字,我只需要循环嵌套判断,“1”对应的数字是“6”,“6”对应的数字是“3”,“3”对应的数字是“-1”,循环停止,所以我找到了“1”最终对应的数字是“3”,如此便实现了冲突检测。 ```c# /// /// PMX交叉算子 /// /// 父类基因一 ///
杂七杂八 0%

喆大师写给前端的一些建议

...s:还有其它问题就是不一一列举,可以来问我或义大师(推荐使用义大师 #[滑稽]) ## 关于TS - Q: 什么是TS - A: TS全称typescript,是微软出品,JS的强类型变量版,由C#的设计师设计,所以会有一股浓浓的C#风,推荐喜欢C#或讨厌弱类型JS的人试一试(这里手动@定林)。 - Q: TS和JS什么关系 - A: 前面也说了,TS是强类型变量版JS,依赖于NODE,如果...
杂七杂八 0%

我的新博客上线了,附上Hexo博客折腾记录

.../](https://blog.utone.xyz/2019091039107/) ## 欢迎交流 我整理了一系列的技术文章和资料,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、java、python 等可获取相关技术文章和资料
杂七杂八 0%

抓住九月小尾巴的小总结,祖国生日快乐~

...ot入门了,用来快速开发网站后台还是很方便的,不过Spring本身的硬伤还是在,ORM不好用、语言比较死板、开发耗时这类问题还是在,在国内这种大环境下说Java的不好真的很容易被喷,不过我还是想说**C#牛逼、Python万岁、Go默秒全**(逃 除开语言和框架本身的限制,最后两周的Java老师还是讲得不错的,从JavaEE开发、基本的设计模式、前端用vue.js实现数据双向绑定,都有涉及,还讲了一...
爬虫 0%

Selenium爬虫实战:截取网页上的图片

...想情况下是可以的,但是经过我多次测试发现不同浏览器裁剪出来图片有不同偏移和缩放,不知道是哪里出了问题,只能硬编码微调,吐了。尽管方法不完美,但是也勉强够用吧,分享一下代码…… ## 代码 这次是用C#(WinForm)做的,虽然只是代码片段,不过截图+裁剪保存部分还是可以参考一下的。 后面的验证码识别是顺带加上的,用了百度的接口,准确率堪忧。 ```cs setStatusMsg1("正在提取...
爬虫 0%

Selenium爬虫实践:ajax请求抓包、浏览器退出

...qi/article/details/84338167 ## 欢迎交流 程序设计实验室专注于互联网热门新技术探索与团队敏捷开发实践,在公众号「程序设计实验室」后台回复 linux、flutter、c#、netcore、android、kotlin、java、python 等可获取相关技术文章和资料,同时有任何问题都可以在公众号后台留言~ - 博客园:[https://www.cnblogs.co...
爬虫 0%

一个玄学的爬虫bug竟让我放弃Python语言!?背后的原因令人唏嘘~

... 哦吼~ 再试试能不能跑… 还是不行,醉了,那就根本不是这个问题。 好吧,我投降了,不想死磕了。~~在哪里跌倒,就在哪里躺下~~ 所以是什么问题呢?至今还是未解之谜… ## 后续 心好累,改用C#写爬虫,放弃Python… 说好的“人生苦短,我用Python”呢?怎么变得这么折腾了 TAT… (PS:我之前做了一个爬虫平台,可以对不同语言实现的爬虫程序进行调度,提供统一的配置中心、统一的数...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(1):项目介绍

...专栏、博客园、掘金等平台的功能 OK,大概就这些了~ 更多功能可能后面想到了就加上~ ## 技术选型 后端本来Django是最佳选择,自带管理后台,开发这类CMS系统最合适不过了。 然而我最近C#写得很顺手,也一直在学习AspNetCore这个高性能的web框架,觉得挺好用的,造轮子不能用太简单的工具来造,不然就失去挑战性也学不到太多新东西了… 于是就确定是AspNetCore了 前端选择之...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(10):图片展示-瀑布流-首页卡片

... ## 前言 上一篇介绍了图片批量导入操作,我看到有同学留言问怎么没有上传图片的介绍,这里再解释一下,本系列文章介绍的顺序是: - 从 **博客的网站前台** 到 **管理后台** - 从 后端C#代码 到 前端Vue+ElementUI 所以上传图片这部分会在后续的**管理后台**开发中介绍,欢迎继续关注哈~ 接着上篇文章,继续介绍摄影模块,图片导入之后,需要做展示,本文介绍~~(水)~~...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(11):实现访问统计

...能瓶颈时再来优化吧~ ## 模型定义 在`StarBlog.Data/Models`中新建一个`VisitRecord.cs` 为了节省篇幅,注释啥的就不放了,具体代码可见github ```c# public class VisitRecord { public int Id { get; set; } public string Ip { get; set; } p...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(12):Razor页面动态编译

... 首先NuGet安装`Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation`,在`Program.cs`中配置一下 原本添加MVC服务是这样的 ```c# builder.Services.AddControllersWithViews( options => { options.Filters.Add
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(13):加入友情链接功能

...:听起来怎么那么熟悉)~~ ## 建模 根据需求,需要俩模型 一个是要显示的友情链接,一个是友情链接申请记录 那开始吧 在`StarBlog.Data/Models`中创建数据模型 ```c# /// /// 友情链接 /// public class Link { [Column(IsIdentity = true, IsPrimary ...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(14):实现主题切换功能

...eali/p/15905760.html) ## 编写Service 在`StarBlog.Web/Services`中添加`ThemeService.cs` 首先是定义Theme模型 ```c# public class Theme { public string Name { get; set; } public string Path { get; set; } ...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(15):生成随机尺寸图片

...3.webp) | 虽然比一开始的方案更费一丢丢内存,但却实实在在提升了出图成功率,nice~ ## 代码实现 直接上代码好了,根据上面提到的思路,分两步走,代码也比一开始的方案更整洁 ```C# async Task<(Image, IImageFormat)> GenerateSizedImageAsync(string imagePath, int width, int height) ...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(16):一些新功能

...这个`GetQuerySet`,这点让我这种用习惯DjangoORM的人觉得很不适应 = =.. 这个接口计算总访问量、今日访问量、昨日访问量,方便做对比~~(受知乎的创作者中心启发)~~ ```c# public object Overview() { ISelect GetQuerySet() => _repo.Where(a => !a.RequestPath....
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(17):自动下载文章里的外部图片

...我在使用过程中对目前的管理后台非常不满(使用Vue2+ElementUI开发),用户体验极差,所以我同时在构思用何种技术对管理后台前端项目进行重构,目前有几个备选项: - **blazor**(使用C#开发前端,很酷) - **react**(相对其他的来说,我最喜欢的前端技术栈) - 仍然**vue**,但重写现有架构(工作量较小) 还没拿定主意,在重构完成之前,只能先捏着鼻子用现有的管理后台,...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(18):实现本地Typora文章打包上传

...mpression` 里,直接用就完事了。 解压前得先把文件复制到临时目录,并创建一个新的临时目录来放解压后的文件。 在 `Services/BlogServices.cs` 里新增代码 ```c# public async Task Upload(PostCreationDto dto, IFormFile file) { // 先复制到临时文件 var tempF...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(19):Markdown渲染方案探索

...%2Fmarkdown-it%2Fmarkdown-it) 看起来都不错,有没有 ToC 我没研究,博客园上有大佬写了一篇比较的文章,有兴趣的同学可以在参考资料中看看~ ### 后端渲染 目前 C# 可用的 Markdown 库似乎只有 Markdig ,一开始我还在吐槽文档缺失导致很难用,甚至一度想自己造轮子重新做一个,不过最近有所改善,在研究了官方新增的几个文档之后,我对这个库的了解又加深了...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(2):环境准备和创建项目

...new`命令的更多用法可以参考官方文档:https://docs.microsoft.com/zh-cn/dotnet/core/tools/dotnet-new 创建完成之后目录结构如下 ```c# StarBlog ├── StarBlog.Contrib ├── StarBlog.Data ├── StarBlog.Migrate ├── StarBlog.Web └── StarBlog....
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(20):图片显示优化

...图片缩略图 一开始我用的是 SixLabors.ImageSharp.Web 这个库 挺方便的,以中间件的形式使用 通过 Nuget 安装之后,在 `program.cs` 里配置一下 ```c# // 注册服务 builder.Services.AddImageSharp(); // 添加中间件 app.UseImageSharp(); ``` 之后就可以在任意图片文件的地址后面加上 `w...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(22):开发博客文章相关接口

...个 `Post` 模型作为参数,所以,首先要定义一个DTO作为添加文章的参数。 文件路径 `StarBlog.Web/ViewModels/Blog/PostCreationDto.cs` ```c# public class PostCreationDto { /// /// 标题 /// public string? T...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(23):文章列表接口分页、过滤、搜索、排序

...:`PageSize`, `Page`, `Search`, `SortBy` 反映到URL上,就是 `Blog/?pageSize=10&page=1&search=关键词` 这样的形式 ```c# public class QueryParameters { /// /// 最大页面条目 /// public const...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(24):统一接口数据返回格式

...9615.webp) 最后的 Endpoint 就是最终生成响应的中间件。 在本项目中,`Program.cs` 配置里的最后一个中间件,就是添加了一个处理 MVC 的 Endpoint ```c# app.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}")...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(25):图片接口与文件上传

...分页查看也是有的,不过因为筛选功能没有做,所以就不定义一个ViewModel作为参数了。 控制器代码 `StarBlog.Web/Apis/Blog/PhotoController.cs` ```c# [HttpGet] public ApiResponsePaged GetList(int page = 1, int pageSize = 10) { var paged =...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(26):集成Swagger接口文档

.../NSwag ## 初步使用 为了保证 `Program.cs` 代码整洁,我们在 `StarBlog.Web/Extensions` 里面创建 `ConfigureSwagger` 类 ```c# public static class ConfigureSwagger { public static void AddSwagger(this IServiceCollection serv...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(27):使用JWT保护接口

...救国解决的,不过不在本文的讨论范围哈)* ## 初步接触 JWT OK,说了那么多,还是开始来写代码吧 ### 生成 JWT 要生成的话很简单,不需要什么额外的配置,几行代码就搞定了 ```c# public LoginToken GenerateLoginToken(User user) { var claims = new List { new(JwtRegis...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(3):模型设计

...log.Data/Models/Category.cs StarBlog博客支持markdown批量导入,然后以目录结构作为文章的分类,目录名就是分类名,且支持多级分类。 部分代码如下: ```c# public class Category { public int Id { get; set; } public string Name { get; set; } pu...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(4):markdown博客批量导入

...代码在这:https://github.com/Deali-Axy/StarBlog/blob/master/StarBlog.Migrate/PostProcessor.cs 构造方法: ```c# private readonly Post _post; private readonly string _importPath; private readonly string _assetsPa...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(6):页面开发之博客文章列表

...后如果切换ORM会带来额外的重构成本。 打开`StarBlog.Data`项目,我们来写一个扩展方法,新增`Extensions`目录,在里面新增`ConfigureFreeSql.cs` ```c# using FreeSql; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjec...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(7):页面开发之文章详情页面

...文章详情页面的设计不能马虎~ ## 思路 文章正文是以markdown格式存储的,要在网页上展示的话,需要把markdown渲染成HTML才行。 那么就有两种思路: - 一种是在后端渲染,使用C#把markdown转换成HTML然后渲染成网页 - 另一种是后端直接输出markdown,使用一些开源的JS库实现markdown渲染 一开始我是采用第一种的后端渲染方式,用到的C#库是Markdi...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(8):分类层级结构展示

...mptyIcon: 'fa fa-circle-o', }); ``` ## 处理分类数据 为了方便使用这个组件,我们需要在后端把分类层级包装成这个组件需要的形式。 首先定义一个节点类 ```c# public class CategoryNode { public string text { get; set; } = ""; public string href { get...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(9):图片批量导入

...//www.cnblogs.com/deali/p/16319425.html) 文章这部分就暂时完成了,接下来是摄影模块,首先要搞定图片的批量导入。 ## 理清需求 先来看看模型设计 ```c# public class Photo { [Column(IsIdentity = false, IsPrimary = true)] public string Id { get;...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记:上传图片功能

... ImageSharp组件文档:https://docs.sixlabors.com/articles/imagesharp/gettingstarted.html ## service ```c# private string GetPhotoFilePath(Photo photo) { return Path.Combine(_environment.WebRootPath, "m...
StarBlog前端开发-Vue 0%

StarBlog博客开发笔记:前端相关

...s.getbootstrap.com/ - Font Awesome 4.7.0:http://www.fontawesome.com.cn/get-started/ - 微软官方文档 - 建议用于 C# 文档注释的 XML 标记:https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/xmldoc/recommended-t...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记:身份认证功能

...uthService`类,先留着不写代码,等把准备工作完成了再来。 ## 用户模型 在 `StarBlog.Data` 项目的 `Models` 目录下新建 `User` 类 代码如下 ```c# namespace StarBlog.Data.Models; public class User { public string Id { get; set; } public...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记:部署

## Nginx 反向代理 ### 后端配置中间件 ```c# app.UseForwardedHeaders(new ForwardedHeadersOptions { ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto }); ``` ### Nginx配置 ```...
VB入门教程 0%

【VB超简单入门】一、写在前面

...来锻炼算法的,我们入门可以先不做这类)我们现在编程主要是为了开发实用软件,什么是实用软件啊?就是可以实实在在做出什么的软件,算那些乱七八糟数学题的简直make no sense啊= =… 下图是我用C#写的绘制分形图形,是根据书里题目写的,结果就是这个黑乎乎的东西,然并卵 ![](8869373-1c9ff82c27e013fc.webp) 分形图形就是涉及数学的东西了吧,但其实我们日常使用电脑...
VB入门教程 0%

【VB超简单入门】二、知识准备

...是不依赖于平台,相同的程序只要编写一次就可以在多个平台运行,比如编写一次HTML5程序就可以同时在PC(电脑)、手机、平板上运行。不过缺点就是运行速度没有编译执行方式的快。如:Python、Java、C#都是这类语言。 l “面向过程”(Procedure Oriented):面向过程是一种以过程为中心的编程思想,这个概念太抽象了= =… 我觉得以我的能力还不足以解释清楚,所以直接引用百科咯~ “...
计科基础 0%

操作系统学习三:进程调度与死锁-以及银行家算法避免死锁--NetCore实现

...,系统处于不安全状态。 ## 实现代码 好啦,关于概念和原理都讲清楚了,接下来贴上代码。 代码里已经写了详细的注释了,虽然是面向过程的写法,但是结构也很清晰。 **首先定义进程类** ```c# namespace OperatingSystemExperiment.Exp3 { public class ProcessExp3 { public int Id; ...
计科基础 0%

操作系统学习二:进程同步与互斥之生产者-消费者问题--NetCore实现

... V(empty); //用信号通知一个空的缓冲区 sleep(rand); //休眠时间,模拟消费产品 } return 0; } ``` ## 实现代码 使用C#实现~ ```cs using System; using System.Dynamic; using System.Threading; namespace OperatingSystemExp...
计科基础 0%

编译原理学习一,去除代码中的注释

## 前言 开始学习编译原理了耶~ 关于编译原理的所有练习,按照老规矩,还是用我最喜欢的C#语言来实现,运行在.NetCore平台上~ 关于这个系列的所有代码已经上传到github了,项目主页: > [https://github.com/Deali-Axy/CompilerConstructionLearning](https://github.com/Deali-Axy/CompilerCon...
2018 0%

我的2018:不念过往、不畏将来

...没必要细述) ## 2018年的改变 前半年循着2017年的路线行进,没有大的变化,后半年换了新的环境,接触了不同的人,我也调整了自己的方向和定位。 在技术方面,后半年开始我渐渐从Python/C#技术栈转向了Java技术栈,(实话说现在转Java是有一些慢了,只能说以前对市场的敏感度不够,学什么都照着自己的喜好和心情来),当然Python和C#肯定是不会抛弃的啦,不过接下来我会把更多的精力放在...
2020 0%

我的2020回顾——技术篇

...提交到Gitee,并把GitHub作为备份,而且后来在公司也开始使用Gitee的企业版,所以后半年在Gitee的提交特别多~ 我看了一下,今年主要涉及的技术(语言)按代码量排序:Python -> C# -> Flutter(Dart) -> 前端(JS) -> Kotlin -> Go -> Java -> PHP 下面挑几个说说相关的应用和心得吧~ ## Python ![](886937...
StarBlog博客开发笔记 0%

基于.NetCore开发博客项目 StarBlog - (28) 开发友情链接相关接口

...链的邮箱发通知。 使用 MimeKit 这个库可以很方便的实现发邮件功能 为了更方便使用,我封装了一个 `EmailUtils` 放在 `StarBlog.Share.Utils` 里面 ```c# public class EmailAccountConfig { public string Host { get; set; } public int Port { get; set; ...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:API版本管理

...要安装这俩nuget包 - Asp.Versioning.Mvc - Asp.Versioning.Mvc.ApiExplorer ## 注册服务 编辑 `Program.cs` 文件 ```c# builder.Services.AddApiVersioning(options => { options.DefaultApiVersion = new ApiVersion(1, 0); ...
StarBlog博客开发笔记 0%

StarBlog博客开发笔记(29):添加RSS订阅功能

...方便进行区别显示。 那肯定选新版的啦,直接用 Atom1.0 版本。 ## 实现 一开始我是打算找个第三方库,可以直接和AspNetCore很好地结合在一起的那种。 不过没有找到,但是我发现 C# 标准库居然有提供对 RSS 的支持~ 那还要啥自行车,立刻安排!🆗 ### 安装依赖 虽然是「标准库」但因为现在 .net core 是很轻的,所以还是需要手动添加个 nuget 包才可以用。...
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:gRPC快速入门

...言的服务。它被当作一个远程过程调用(RPC)框架来使用,是由Facebook为“大规模跨语言服务开发”而开发的。它通过一个代码生成引擎联合了一个软件栈,来创建不同程度的、无缝的跨平台高效服务,可以使用C#、C++(基于POSIX兼容系统)Cappuccino、Cocoa、Delphi、Erlang、Go、Haskell、Java、Node.js、OCaml、Perl、PHP、Python、Ruby和S...
项目开发小结系列 0%

项目完成小结:使用Blazor和gRPC开发大模型客户端

...义为服务端流式输出,然后我又在 Blazor 项目里封装了一个 `ChatService` 用生成器的方式,返回一个 `IAsyncEnumerable` 对象。*(详见第三个参考资料)* ```c# public async IAsyncEnumerable StreamingChat(string prompt) { using var call = ClientRoute...
Asp-Net-Core学习笔记 0%

Asp-Net-Core学习笔记:单元测试和集成测试

...ct:执行要测试的方法,如调用要测试的函数和方法。 - Assert:断言测试结果,验证被测试方法的输出是否与预期的结果一致。 ### 最简单的例子 #### Controller 代码 ```c# [ApiController] public class DemoController : ControllerBase { [HttpGet("[action]")] public Api...
C# 0%

C#集成ViewFaceCore人脸检测识别库

## 前言 人脸检测与识别现在已经很成熟了,C# 上有 ViewFaceCore 这个很方便的库,但这种涉及到 native 调用的库,一般会有一些坑,本文记录一下开发和部署的过程。 本文的项目是 `AIHub` ,关于本项目的开发过程,可以参考之前的文章:[项目完成小结:使用Blazor和gRPC开发大模型客户端](https://blog.sblt.deali.cn:9000/p/projec...
个人数据保全计划 0%

个人数据保全计划:搭建私有音乐库

...e), [substreamer](https://substreamerapp.com/), [Ultrasonic](https://github.com/ultrasonic/ultrasonic#readme) and [Audinaut](https://github.com/nvllsvm/Audinaut#readme) - Web: [Subplayer](https://github...
C# 0%

C#使用iKvm黑科技无缝接入JVM生态

## 前言 时间过得飞快,一转眼国庆假期也要过去了,再不更新博客就太咸鱼了…… 最近在开发AIHub的时候想找个C#能用的命名实体识别库,但一直没找到,AI生态方面C#确实不太丰富,这块还是得Python,但我又不想跟LLM一样用gRPC的方式来调用,感觉有点麻烦。 这时候发现好像JVM生态有不少这类NLP工具,比如 Standford NLP 、HanLP这类。所以就想到之前在网上看到的iKv...
数据库 0%

RedisStack部署/持久化/安全/与C#项目集成

...码了,可以用以下命令清除 ```bash ACL SETUSER default on nopass sanitize-payload ~* &* +@all ``` ## 在程序中连接 以 C# 为例 首先安装官方提供的 nuget 包 ```bash dotnet add package NRedisStack ``` demo 代码 ```c# using NRedisStack...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:快速在已有项目中引入EFCore

...项目架构:[基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目](https://www.cnblogs.com/deali/p/16172342.html) ```c# StarBlog ├── StarBlog.Contrib ├── StarBlog.Data ├── StarBlog.Migrate ├── StarBlog.Web └── StarBlog....
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:EFCore统一实体和属性命名风格

## 前言 C# 编码规范中,类和属性都是大写驼峰命名风格(PascalCase / UpperCamelCase),而在数据库中我们往往使用小写蛇形命名(snake_case),在默认情况下,EFCore会把原始的类名和属性名直接映射到数据库,这不符合数据库的命名规范。 为了符合命名规范,而且也为了看起来更舒服,需要自己做命名转换处理。 ## FreeSQL的命名转换功能 FreeSQL 内...
Go 0%

使用go语言开发hive导出工具

...是很顺利,但主机终端似乎是旧版本的Ubuntu,自带的Python居然是2.7,Python2的语法写得我实在是烦,于是我打算用能编译成二进制的语言在本地写,然后上传到终端上去运行。 这时候想到了 C# ,.Net8 对 AOT 提供了很好的支持,可以当成 C++ 使用,不过我用下来还是有一些小坑,比如 AOT 模式只能在 Linux 下才能编译 Linux 版本的可执行文件,不能像 Go 那样在 ...
AI-炼丹 0%

LLM探索:为ChatGLM2的gRPC后端增加连续对话功能

...# 简述 系统分为LLM后端和客户端两部分,LLM后端使用 gRPC 提供接口,客户端就是我用 Blazor 开发的 AIHub 所以这次涉及到这几个地方的修改 - proto - 客户端 - C# 代码 - AIHub页面 - Blazor 的 razor 代码 - gRPC 服务端 - Python 代码 ## 修改 proto 来改造一下 proto 文件 ```protobuf \...
C# 0%

开发现代化的.NetCore控制台程序:(1)项目介绍以及依赖注入/配置/日志等使用细节

## 前言 最近需要开发小工具的场景有点多,上次我用 go 语言开发了一个 hive 导出工具,体验还不错,只是 go 语言的语法实在是喜欢不起来,这次继续试试用 C# 来开发小工具。 这次小工具的功能很简单,数据库数据迁移,不过这不重要,主要是记录一下更适合 .Net Core 宝宝体质的控制台小工具开发过程😃 本文中,我为「现代化的控制台应用的开发体验」做了个定义:能像 Web 应用那样很...
C# 0%

开发现代化的.NetCore控制台程序:(2)创建一个C#项目模板

...", "shortName": "flu-cli", "sourceName": "FluentConsole.Template", "tags": { "language": "C#", "type": "project" } } ``` 注意其中的 `sourceName` 字段,这是模板创建时会被替换的内容。 比如我们使用了以下命令,从模板创建一个项目,通过 ...
PHP 0%

2023年的PHP项目部署笔记。什么?还有人用PHP?

...r方式真的搞得心好累,现在回想起来还心有余悸😢 ## docker方案 先把我的 docker 方案放上来吧,毕竟也折腾了好久,处于基本可用的状态。 ### 目录结构 目录结构如下 ```c# php-code ├─ log // 日志 │ ├─ nginx │ └─ php ├─ conf // 配置 │ ├─ nginx │ │ ├─ nginx.conf ...
StarBlog博客开发笔记 0%

StarBlog开源博客项目 - 2023年底更新内容一览

...。 > PS:如果数据量更大的话,这种方式也不灵了,但目前这不在本项目的考虑范围内。 `X.PagedList` 这个组件依然可以继续使用,只不过只用它的元数据就行,一个典型的代码块如下 ```c# IPagedList pagedList = new StaticPagedList( await querySet.Page(param.Page, param.P...
StarBlog博客开发笔记 0%

基于.NetCore开发博客项目 StarBlog - (30) 实现评论系统

... 评论实体类的代码如下,可以看到除了 `AnonymousUser` 的引用,我还预留了一个 `User` 属性,目前博客前台是没有做登录功能的,预留这个属性可以方便以后的登录用户进行评论。 ```c# public class Comment : ModelBase { [Column(IsIdentity = false, IsPrimary = true)] public string...
Web前端 0%

在TypeScript项目中搭配Axios封装后端接口调用

...ng statusCode: number successful: boolean } ``` ### 定义 `ApiClient` 最后就是定义了 `ApiClient` 类,有点模仿 C# 的 `HttpClient` 内味了 这里面用到了 axios 的拦截器,发起请求的时候给 header 加上认证信息,返回的时候看看有没有错误,如果是 401 unauthorized 的话就跳...
Web前端 0%

NextJs 与 Tailwind 入门开发笔记

...ntityServer4 来做,我边学 oauth2.0 边看 IdentityServer4 的代码和文档,发现 ids4 有点重,于是萌生了自己造轮子的想法,现在基本搞好了,已经部署使用,后端是 C# 开发的。 ![](23c3c06de1c3c01a.webp) ### 个人网站 虽然已经有博客了,但我还是想做个网站,作为一个总的导航,可以展示一些项目啥的,博客就专门写文章。 其实我本来...
StarBlog博客开发笔记 0%

基于.NetCore开发博客项目 StarBlog - (31) 发布和部署

...先自行编写测试代码。 > > 文章传送门: [Asp-Net-Core学习笔记:单元测试和集成测试](https://www.cnblogs.com/deali/p/17559685.html) C# 现在已经全面拥抱云原生跨平台,部署方式多种多样,特别是 dotnet8 出来之后大大加强了 AOT 功能,可以获得和 go 差不多的方便 AOT 能力,本文介绍几种常见的部署方式,可供读者灵活选择。...
Windows 0%

2024年,提升Windows开发和使用体验实践 - 终端&命令行篇

...ext-symbols.toml" ``` ### Powershell 7 这是微软新出的开源跨平台终端,比内置的 PowerShell 的功能强了一丢丢,性能更好。*(从项目仓库来看,是使用 C# 开发的,所以跨平台做得不错)* 项目地址: https://github.com/PowerShell/PowerShell 下载个安装包安装就完事了 我的 `$PROFILE` 配置 ``...
Go 0%

使用go语言开发自动化API测试工具

...t) bool { return testReports[i].Elapsed > testReports[j].Elapsed }) ``` 相比之下还是 cs 的 Linq 舒服啊 ```c# testReports.Sort((a, b) => a - b); ``` ## 小结 就这样吧,很简单的一个小工具,因为还处在 go 的小白阶段,每用一个新的库都会记录一下。 ## 参考资...
C# 0%

使用C#和MemoryCache组件实现轮流调用APIKey以提高并发能力

## 文章信息 标题:使用C#和MemoryCache组件实现轮流调用API Key以提高并发能力的技巧 摘要:本文介绍了如何利用C#语言中的MemoryCache组件,结合并发编程技巧,实现轮流调用多个API Key以提高系统的并发能力。通过示例代码和详细说明,读者将了解如何有效地管理API Key的调用次数限制,并优化系统性能。 Title: Techniques for Using C# ...
C# 0%

并行化优化KD树算法:使用C#实现高效的最近邻搜索

## 本文信息 中文名:《并行化优化KD树算法:使用C#实现高效的最近邻搜索》 英文名:"Parallelized Optimization of KD-Tree Algorithm: Implementing Efficient Nearest Neighbor Search in C#" ### 摘要 本文介绍了如何使用并行计算技术优化 KD 树算法,并使用 C# 编程语言实现了高效的最近...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:实现动态审计日志功能

## 前言 最近一直在写 Go 和 Python ,好久没写 C# ,重新回来写 C# 代码时竟有一种亲切感~ 说回正题。 在当今这个数字化迅速发展的时代,每一个操作都可能对业务产生深远的影响,无论是对数据的简单查询,还是对系统配置的修改。在这样的背景下,审计日志不仅仅是一种遵循最佳实践的手段,更是确保数据安全、提高系统透明度、促进责任归属明晰的关键工具。通过详细记录谁在何时对系统进行了何种操作...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:使用alpine镜像并加入健康检查

...有健康检查,这次我顺便也给加上了。 > PS: 本文的例子项目来自一个差点被砍掉的项目「IdentityServerLite」,后面我会写个文章介绍一下~ ## 添加健康检查 注册服务 ```c# builder.Services.AddHealthChecks(); ``` 配置中间件 ```c# app.MapHealthChecks("/healthz"); ``` 之后测试一下,...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:进一步实现非侵入性审计日志功能

...og.cs └─ AuditConstant.cs 6 directories, 10 files ``` ### 创建 `EntityChangeInfo` 实体 用来保存实体变化 ```c# public class EntityChangeInfo { public string Entity { get; set; } public string Action { get; ...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:使用ActionFilterAttribute实现非侵入式的参数校验

...例,该实例贯穿请求处理的整个生命周期。 这里我们利用 HttpContext 提供的 `Items` 这个键值对集合(用于在请求的不同中间件和组件之间共享数据)来共享 Client 对象。 ```c# var client = HttpContext.Items["client"] as Client; ``` ## 开始写代码 ### ClientIdSource Enum Client ...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:给SwaggerUI加上登录保护功能

...者的角度来介绍,也许会更直观一些。 编辑 `src/IdsLite.Api/Extensions/CfgSwagger.cs` 文件 (顾名思义,这是用来配置Swagger的相关扩展方法) ```c# public static class CfgSwagger { public static IServiceCollection AddSwagger(this IServiceCollect...
Asp-Net-Core开发笔记 0%

Asp-Net-Core开发笔记:使用原生的接口限流功能

...为了保持 `Program.cs` 的代码简洁,依然是使用扩展方法来实现服务注册和配置 在 `src/IdsLite.Api/Extensions/CfgRateLimit.cs` 文件中 ```c# public static class RateLimitPolicies { public const string Fixed = "fixed"; public const strin...
2024 0%

聊聊一个差点被放弃的项目以及近期的开源计划

...非常简陋,甚至没有应用管理功能,多个系统都共用相同的 token ,然后在每个系统里去判断用户权限,非常不优雅也不安全。 去年底就开始计划这个单点认证项目 起初做了一些技术选型和调研,本来打算在 C# 生态里选择的,不过 C# 生态里的单点认证项目实在是少,开源的比较完善的也就 IdentityServer4 了,但这个项目已经停在了 .Net6 版本,现在这个团队已经转向商业版的开发。 Ide...
DevOps 0%

重启sentry+升级ExceptionLess版本,docker排坑记录

## 前言 自从去年sentry又挂了之后,再加上大部分项目都是 C# 的,使用 ExceptionLess 的体验已经很不错了,所以我们就一直没再使用 sentry 🦎 前天刚把 Gitlab 配置好,接下来有一些其他语言☕️的项目要监控,我想着继续把 sentry 也重启了。然后 ExceptionLess 也很久没更新了,官方已经出到8.x版本,我们还在用 7.x,这次也顺便升级一下⛰️ ...
Desktop 0%

PC软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具

...起因是想给之前开发来自己用的简单视频剪辑工具 QuickCutSharp 加个功能,不过这个软件是基于 WinForms 开发的,做界面得拖拉控件,感觉繁琐又不灵活,于是索性重新做一个。 原有代码是C#,于是我就继续在这个生态里寻找开发方案,Avalonia、MAUI等都是不错的选择,前者我之前用过,做了个简单的图片管理工具,后者听说是微软新推出的跨平台开发方案,我这次也试了一下,不过单纯处理环境就...
Desktop 0%

Blazor Hybrid 实战体验:那些你可能没预料到的坑

...lipify中把视频拖进去处理)带来了很大的不便。 ### 冗余代码~~(不是)~~ 看了项目代码的同学可能会发现,FormMain.cs里还有处理拖放事件的代码,不过实际上并没有生效。 ```c# // 处理拖动进入事件,检测是否为文件 private void blazorWebView1_DragEnter(object sender, DragEventArgs e) { Conso...
StarBlog博客开发笔记 0%

基于.NetCore开发博客项目 StarBlog - (32) 第一期完结

...复习了一些 AspNetCore 框架的功能,比较零散不成体系,与 StarBlog 的开发是息息相关的,所以在本文记录一下吧~ ### 统一错误处理 #### 异常过滤器 编写过滤器 ```c# public class ApiExceptionFilter : IExceptionFilter { public void OnException(ExceptionContext con...
爬虫 0%

编写爬虫下载公众号上好看的壁纸

...ali/p/14367106.html) - [爬虫笔记:提高数据采集效率!代理池和线程池的使用](https://www.cnblogs.com/deali/p/15890678.html) - [C#爬虫开发小结](https://www.cnblogs.com/deali/p/17061678.html) - [把爬虫放到手机上跑!Flutter爬虫框架初探~](https://zhuanlan...
StarBlog番外 0%

StarBlog 番外篇 (1) 全新的访问统计功能,异步队列,分库存储

...分库 ## 具体实现 接下来是具体的代码实现 ### 队列 在 `StarBlog.Web/Services` 里添加 `VisitRecordQueueService.cs` 文件 ```c# public class VisitRecordQueueService { private readonly ConcurrentQueue _logQueue = ...
StarBlog番外 0%

StarBlog 番外篇 (2) 深入解析Markdig源码,优化ToC标题提取和文章目录树生成逻辑

...与已存在的ID冲突时,会自动添加数字后缀 - 例如:如果"my-heading"已存在,则新的ID会变成"my-heading-1","my-heading-2"等 #### 具体处理步骤 ```c# // 获取heading的原始文本 stripRenderer.Render(headingBlock.Inline); ReadOnlySpan rawHeadingText = ((...
StarBlog番外 0%

StarBlog 番外篇 (3) StarBlog Publisher,跨平台一键发布,DeepSeek加持的文章创作神器

.../StarBlog) 设计的专业文章发布工具,提供比传统打包上传更便捷的文章发布方式。 它支持 Markdown 格式文章的预览和发布,提供直观的用户界面,让您能够轻松管理和发布博客内容。 基于 C#和.NET 8.0 构建,充分利用 Microsoft.Extensions.AI 框架,集成了多种领先的 AI 大模型(包括 OpenAI 的 ChatGPT、Anthropic 的 Claude ...
Desktop 0%

AOT编译Avalonia应用:StarBlog Publisher项目实践与挑战

...运行时用 JIT(即时编译器)动态编译,Native AOT是 **提前(Ahead of Time)** 直接搞定所有编译工作。 以下是一个简单的 Native AOT 流程图 ```bash C# 代码 ↓ Roslyn 编译(生成 IL) ↓ Native AOT 编译器 (ilc) ↓ - 静态分析 - Tree Shaking - IL到机器码转换 - 链接器合成可执行...
C# 0%

一次小而美的重构:使用 C# 在 Avalonia 中生成真正好看的词云

...出词云那种灵动、密集、错落有致的美感。 于是,我决定 **彻底重构** 这一模块,重新寻找合适的词云生成方案。 ## 选型 在 Avalonia 生态中是没有直接可用的词云组件的。 不过没事,C# 的生态还算丰富,基本要啥有啥,词云自然不在话下。 在调研阶段,我找到了两个比较流行的 C# 词云库: - [Sdcb.WordCloud](https://github.com/sdcb/Sdc...
C# 0%

SharpIco:用纯C#打造零依赖的.ico图标生成器,支持.NET9与AOT编译

...上 找到了一个基于 nodejs 实现并且零依赖的(大部分都是依赖于 Magick 这个 C++实现的图片库),然而很遗憾,这个工具在我电脑上并不能使用…… ## 目标 这时我想起来之前曾经用 c# 开发了一个图片格式转换工具,使用了 .Net8 的 AOT 功能,可以像 go 语言那样开发出跨平台的单可执行文件 所以我决定继续使用 C# 开发一个图标生成工具,这个工具可以实现: - 纯 C...
Desktop 0%

提升Avalonia UI质感,跨平台图标库选型实践

...net add package Projektanker.Icons.Avalonia.FontAwesome ``` 在 `Program.BuildAvaloniaApp` 方法里注册 ```c# public static AppBuilder BuildAvaloniaApp() { IconProvider.Current .Register
C# 0%

花了不少时间,修复了一个SharpIco生成图标的bug

...a2.jpg) 我测试了一下确实会这样 这个就很诡异了 看代码也可以发现,每个尺寸的图片都是通过 Resize 出来的 这样的话,无论输入的图片是多大的,最终都会缩小成几个指定的尺寸 ```c# using var original = Image.Load(sourcePng); foreach (var size in sizes) { using var clone = orig...
DevOps 0%

极大提高项目部署的生产力!分享一个半自动化的CICD实现方案

...Python 编写的,不过没有其他外部依赖,完全使用标准库实现,还算比较方便的 ```bash python scripts/build_docker.py ``` > PS: 后续我会考虑使用 C# 或者 Go 重新写这个脚本,支持 AOT,作为一个工具添加到系统 PATH,使用起来更方便 ## 脚本 接下来放一个简化版本的脚本 由于篇幅关系,无法在文章里贴出全部代码,有需要的同学可以在公...
其他 0%

天气太热了,天气预报怕是假的吧?机械温度计开箱

...什么气温看起来不高,但实际却感觉这么热… ### 热指数(Heat Index) 这个热指数可以代表体感温度。 原始公式是基于 **华氏温度 (°F)** 和相对湿度(%)的回归方程: ```c# HI = -42.379 + 2.04901523*T + 10.14333127*RH - 0.22475541*T*RH - 0.00683783*T*T - 0.05481717*...
C# 0%

C#实现+AOT 打造的多功能图片处理工具 ImageGlider

## 前言 上次我用 C# + AOT 开发了一个 [ICO 图标生成工具](https://blog.deali.cn/p/sharpico-pure-csharp-zero-dependency-ico-generator) 这个实用小工具一经发布就受到不少朋友的关注 最近还被做成了网站,有图形化界面来一键生成 ico 图标,更方便普通用户的使用 这种 C# 开发,GitHub Actio...
C# 0%

分析C#项目的单元测试覆盖率,提高代码质量

...harp-aot-imageglider)介绍 [ImageGlider](https://github.com/star-plan/image-glider) 的文章里预告的那样,这篇同样属于那套「C# + 自动化发布」开发流程的系列分享,继续把踩过的坑和总结的经验都记录下来,大家一起少走弯路。 单元测试的重要性不用我多说了吧?😄 而**覆盖率**,保证了单元测试的**广度和有效性——它能帮助...
C# 0%

C#实现+AOT 打造的智能PDF目录提取工具 PdfTocExtractor

...发现,有些文档文字量很大,想让大模型完全解读不太现实,先不说 context 长度够不够,首先 token 消耗量就爆炸了 于是想到使用取巧的方式,提取 PDF 的目录来进行分析,于是说干就干,用 C# 写了一个工具来实现目录提取,结果效果还不错 后续我又继续完善这个工具,增加了语义识别等功能 继续沿用 C# + AOT + GitHub Actions + dotnet tool + nuge...
C# 0%

上位机开发之假装有设备,使用 C# 模拟串口设备

## 前言 据说不会上位机和游戏开发,都不好意思说自己会 C# 正好这俩我都不太会😂 这不来点一下上位机的技能树 这次的需求很简单,用 C# 模拟一个设备协议,实现不用去现场对接设备,也能先开发和调试上位机程序。 实际设备是用 RS-485 标准进行通信,模拟跑通之后,到现场只需要把RS-485 总线(A/B 差分线)插到 USB-RS485 转换器上就可以实现数据读取和指令下发了。 #...
Markdown 0%

解决Markdig无法识别文件名带空格的图片问题

...法 - 支持路径中包含空格、中文字符等特殊字符 - 自动处理引号包围的路径和 URL 编码 ## 代码 话不多说,直接上代码吧 先看原来的图片解析代码,完全使用 Markdig 来实现 ```c# /// /// 从Markdown内容中提取所有图片路径 /// /// 图片路径数组 public string[]...
AspNetCore 0%

Blazor全栈是个陷阱

...」「AI 生成的代码直接跑不通」「StackOverflow 上的答案全是过时的」。这种不确定性会导致开发效率大打折扣。 ### 全栈的错觉 Blazor 最大的卖点就是「全栈」,可以前后端都写 C#,不用管 JS,不用折腾 Node,不用 npm/yarn/pnpm,不用面对一大堆前端工程化配置,看起来很美好。 但这其实是个陷阱。 因为你终究还是要面对前端世界。 - 你要做炫酷交互,最后绕...