Fork me on GitHub
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 24 下一页
摘要: 在上一篇中介绍了一下razor文件中,js与c#之间的相互调用,但WinForm和Blazor混合中,没有真正与WinForm进行交互,本篇来说明一下。 WinForm中混合Blazor是通过ServiceCollection来完成的,如果想WinForm和Blazor交互,可以通过向Service 阅读全文
posted @ 2022-12-04 16:13 桂素伟 阅读(553) 评论(0) 推荐(1)
摘要: 在Debug程序时,面对一些大集合,之前是这样查看的,如下图,这样看起来不直观,集合中的数据只能一个一个实体查看: VS2022预览版带来一个新功能,集合表格可视化,比如下面这样一段代码: using Bogus; using System.Text.Unicode; var addressFake 阅读全文
posted @ 2022-12-04 15:38 桂素伟 阅读(141) 评论(0) 推荐(0)
摘要: 这一直以来是我写代码的一个痛点,C#11终于解决了,那就是我想把一个整齐的格式的json字符串转出,但不能如愿,要不用一个三方库来搞定,要不就加各种双引号,如果有变量还得小心处理{},因为在C#string类型中 @,$,",{,}都是有含义的,组合使用后就各种转义,补齐,C#11终于解决了这个痛点 阅读全文
posted @ 2022-12-04 15:31 桂素伟 阅读(78) 评论(0) 推荐(0)
摘要: “为什么中间件的构造函数里不能使用scope的生命周期类型啊?”, 那就用实例来得到答案吧,先看小桂说的情况,是报错的: var builder = WebApplication.CreateBuilder(args); builder.Services.AddScoped<ITestService 阅读全文
posted @ 2022-12-04 12:08 桂素伟 阅读(32) 评论(0) 推荐(0)
摘要: .NET7的第三个预览版发布了,同样带来了mini api的更新,这次带来了路由过滤器,与mvc版的action 过滤器相似。具体见https://devblogs.microsoft.com/dotnet/asp-net-core-updates-in-dotnet-7-preview-3/ 用官 阅读全文
posted @ 2022-12-04 12:06 桂素伟 阅读(90) 评论(0) 推荐(0)
摘要: 把一个数组的全部元素加1,有什么好办法,于是有了下面的分析: var arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; //方法一 foreach (var i in arr) { i++; } //方法二 for (var i = 0; i < arr. 阅读全文
posted @ 2022-12-04 11:48 桂素伟 阅读(165) 评论(0) 推荐(0)
摘要: 在上一篇说过,Dapper是通过扩展IDbConnection来达到实现的,那带来的一个问题就是隔离性不好,比如在做单元测试时,mock就有点困难,所以在实践中,我对Dapper作了扩展,下面分享出来,以供大家参考,同时说明一下,这仅是自己根据自己的需要实现的一种方式而以,不一定是全面和完善的。 本 阅读全文
posted @ 2022-11-30 20:56 桂素伟 阅读(258) 评论(0) 推荐(0)
摘要: 不知不觉来到了《.NET6之MiniAPI》的第三十篇,回顾之前的篇幅,主要涉及如下: HTTP请求,应答 Request 桂素伟,公众号:桂迹.NET6之MiniAPI(二):request Response 桂素伟,公众号:桂迹.NET6之MiniAPI(三):Response 配置选项 配置 阅读全文
posted @ 2022-11-30 20:51 桂素伟 阅读(203) 评论(0) 推荐(0)
摘要: 不知不觉来到了《.NET6之MiniAPI》的第三十篇,回顾之前的篇幅,主要涉及如下: HTTP请求,应答(二,三) 配置选项(四,五) 依赖注入,中间件(六,七) 日志,监控,跟踪,健康检查(八,十三,十九,二十七,二十八) 授权验证(九,十) ORM(十二,二十五,二十六) 本地化,缓存,限流, 阅读全文
posted @ 2022-11-30 20:44 桂素伟 阅读(82) 评论(0) 推荐(0)
摘要: MiniAPI的单元测试与asp.net web api的单元测试大体是相同的(毕竟都是asp.net core),只是在小细节上有一些差异,文章中会说到这点。 本文测试框架是XUnit,Mock框架是Moq,关于这两个框架和库的学习,这里就忽略了。 首先创建两个项目,API项目MiniAPI19U 阅读全文
posted @ 2022-11-30 20:43 桂素伟 阅读(126) 评论(0) 推荐(0)
摘要: Log,Metrics,Tracing是为服务正常运行保驾护航的三件套,前面有介绍过Log和Metrics,本篇说明说一下Tracing。Tracing的思路和Metrics一样,通过三方服务,来达成效果,这里选用的是Jaeger,通过在MiniAPI项目中引入Jaeger和OpenTracing的 阅读全文
posted @ 2022-11-30 20:27 桂素伟 阅读(105) 评论(0) 推荐(0)
摘要: 应用的各种Metrics是保证应用健康稳定运行的基础,特别对于一些可用性有所要求的应用,本文介绍prometheus-net这个三方指示库。 prometheus-net的工作原理是,在应用内部埋点,通过prometheus采集数据,然后通过grafana把采集到的数据展现出来,所以这里首先要下载p 阅读全文
posted @ 2022-11-30 20:19 桂素伟 阅读(178) 评论(0) 推荐(1)
摘要: 在写.NET6 MiniAPI的时候,.NET7的新功能也在发展,这里就用特别篇把新加的特点分享给大家,本篇先说Preview1和2 特点1 文件上传,demo如下: var builder = WebApplication.CreateBuilder(args); var app = builde 阅读全文
posted @ 2022-11-30 20:02 桂素伟 阅读(155) 评论(0) 推荐(0)
摘要: 注:如果你使用Dapper一段时间了,这篇你可以跳过去了。 在第十二篇中,我们聊过官方的ORM——EntityFramework,它可以把SQL细节都隐藏,这对于一些标准化的关系数据库项目非常便捷。今天,介绍另外一个流行的ORM——Dapper,Dapper是通过扩展IDbConnection方法来 阅读全文
posted @ 2022-11-29 21:10 桂素伟 阅读(188) 评论(0) 推荐(0)
摘要: 为了保障系统的稳定和安全,在调用三方服务时,可以增加重试和熔断。重试是调用一次失败后再试几试,避免下游服务一次闪断,就把整个链路终止;熔断是为了防止太多的次数的无效访问,导致系统不可知异常。 Polly是独立的重试机制的三方库,这里只说明在使用httpclient时,请求下游api时的重试和熔断。需 阅读全文
posted @ 2022-11-29 21:01 桂素伟 阅读(124) 评论(0) 推荐(0)
摘要: 本篇是与上篇HttpClient有关联的,有前篇中,我们是直接使用HttpClient来发出请求的,所有的请求信息都是我们根据需要自己来填充的。那Refit是什么呢?它是一个让我们调用API就像调用一个对象的方法一样简单,是通过把http请求信息,配置到一个接口,由refit把这些信息转成一个标准的 阅读全文
posted @ 2022-11-29 20:52 桂素伟 阅读(349) 评论(0) 推荐(0)
摘要: 说明:本篇不是说明HttpClient怎么使用,而以分享在asp.net core mini api框架下,HttpClient的引入和使用方式。 我们在业务开发中,免不了调用三方的服务,这时就会用到HttpClient,在早期的asp.net core框架中,一般是通过new HttpClient 阅读全文
posted @ 2022-11-29 20:46 桂素伟 阅读(322) 评论(0) 推荐(0)
摘要: 限流,可以网络的基础设施进行配置实现,也可以在网关的地方进行限流,但服务本身的限流也不可或缺,因为当多副本时,一个副本故障,流量对于其他副本来说会提高,如果超过其承受请求量的范围,会引起服务连续崩塌,所以单服务本身最好也是要实现限流的。 在asp.net core项目中,可以引入AspNetCore 阅读全文
posted @ 2022-11-28 20:41 桂素伟 阅读(234) 评论(0) 推荐(0)
摘要: 为了验证api post上来的数据的有效性,我们可以引入FluentValidation(详见https://fluentvalidation.net)。在asp.net mvc中,使用的是模型验证,通过在实体类上添加特性达到验证效果。 FluentValidation的原理是通过实现Abstrac 阅读全文
posted @ 2022-11-28 20:26 桂素伟 阅读(148) 评论(0) 推荐(0)
摘要: 在本系例文章的第八篇中,我们聊过官方的日志实现,即《.NET6之MiniAPI(八):日志》。但官方的日志功能更多是提供了一个实现基础,对于要求一个灵活,强大,方便的日志体系,官方的还是有差距的,那么本篇就介绍一下NLog,这款强大,灵活,方便的日志库,在MiniAPI中的使用。直入主题,首先引入N 阅读全文
posted @ 2022-11-28 20:22 桂素伟 阅读(285) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 24 下一页