标签: ASP.NET

.NET开源项目Polly的简单介绍

今天介绍一个.NET开源库:Polly,它是支持.NETCore的,目前在GitHub的Star数量已经超过7千,它是一个强大且实用的.NET库。Polly介绍官方对Polly的介绍是这样的:Pollyisa.NETresilienceandtransient-fault-handlinglibra...

ASP.NET 2021-06-30 34 0 0 阅读全文

在.NET Core 中使用 FluentValidation 进行规则验证的方法

不用说,规则验证很重要,无效的参数,可能会导致程序的异常。如果使用WebAPI或MVC页面,那么可能习惯了自带的规则验证,我们的控制器很干净:publicclassUser{[Required]publicstringFirstName{get;set;}[Required]publicstring...

ASP.NET 2021-03-27 31 0 0 阅读全文

如何给Asp.Net Core写个中间件记录接口耗时

Intro写接口的难免会遇到别人说接口比较慢,到底慢多少,一个接口服务器处理究竟花了多长时间,如果能有具体的数字来记录每个接口耗时多少,别人再说接口慢的时候看一下接口耗时统计,如果几毫秒就处理完了,对不起这锅我不背。中间件实现asp.netcore的运行是一个又一个的中间件来完成的,因此我们只需要定...

ASP.NET 2021-04-26 23 0 0 阅读全文

在ASP.NET Core中用HttpClient发送POST, PUT和DELETE请求

在ASP.NETCore中使用HttpClient发送POST请求在CompanyEmployees.Client中有一个HttpClientCrudService类。这个类已经包含了两个方法,我们将在本文中对它进行扩展。既然配置已经准备好了,我们可以添加一个新方法来发送POST请求到WebAPI:...

ASP.NET 2021-03-20 25 0 0 阅读全文

.NET Core结合Nacos实现配置加解密的方法

背景当我们把应用的配置都放到配置中心后,很多人会想到这样一个问题,配置里面有敏感的信息要怎么处理呢?信息既然敏感的话,那么加个密就好了嘛,相信大部分人的第一感觉都是这个,确实这个是最简单也是最合适的方法。其实很多人都在关注这个问题,好比说,数据库的连接字符串,调用第三方的密钥等等这些信息,都是不太想...

ASP.NET 2021-06-21 28 0 0 阅读全文

Asp.Net Core MVC之实现基于Token的认证

安装Nuget包项目中添加包:dotnetaddpackageMicrosoft.AspNetCore.Authentication.JwtBearer添加认证配置Startup类中添加如下配置:publicvoidConfigureServices(IServiceCollectionservic...

ASP.NET 2021-05-07 25 0 0 阅读全文

[Asp.Net MVC4]验证用户登录实现实例

最近我们要做一个仿sina的微博,碰巧的是我最近在学习mvc,就想用mvc技术实现这个项目。既然是微博,那不用想也应该知道肯定要有用户登陆,但是和常规的asp.net登陆又不一样,以下是我一下午+一晚上的研究成果~~~首先,建好数据库以及表,这就不用说了吧。下面说一下主要的结构控制器:HomeCon...

ASP.NET 2021-05-26 23 0 0 阅读全文

详解如何在ASP.NET Core中编写高效的控制器

通过遵循最佳实践,可以编写更好的控制器。所谓的“瘦”控制器(指代码更少、职责更少的控制器)更容易阅读和维护。而且,一旦你的控制器很瘦,可能就不需要对它们进行太多测试了。相反,你可以专注于测试业务逻辑和数据访问代码。瘦控制器的另一个优点是,它更容易维护控制器的多个版本。这篇文章讨论了使控制器变胖的坏习...

ASP.NET 2021-03-27 31 0 0 阅读全文

Asp.Net利用Ashx文件实现文件的上传功能

原来以为文件上传是一个比较简单的功能,结果搞了一个晚上才搞定~这里主要介绍两种方法实现。方法一:Form表单提交html代码:上传文件UploadHandler.ashx代码:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;u...

ASP.NET 2021-07-07 35 0 0 阅读全文

.Net Core异常中间件的使用

简单介绍一下异常中间件的使用。正文if(env.IsDevelopment()){app.UseDeveloperExceptionPage();}这样写入中间件哈,那么在env环境下就会去执行UseDeveloperExceptionPage。publicstaticIApplicationBui...

ASP.NET 2021-06-21 35 0 0 阅读全文

.Net基于Thread实现自旋锁的三种方式

本文主要讲解.Net基于Thread实现自旋锁的三种方式基于Thread.SpinWait实现自旋锁实现原理:基于Test--And--Set原子操作实现使用一个数据表示当前锁是否已经被获取0表示未被索取,1表示已经获取获取锁时会将_lock的值设置为1然后检查修改前的值是否等于0,优点:不使用Th...

ASP.NET 2021-06-21 50 0 0 阅读全文

Asp.Net Core为IHttpClientFactory添加动态命名配置

某些时候我们需要为HttpClient动态配置一些东西,例如证书等,参考博问如何使用IHttpClientFactory动态添加cer证书.例如服务是一个回调服务,而被回调方采用了自定义的https(即自定义证书).上述是一些前情概要,那么接下来我们就来实现这个需求.秒想到一个方法,我们可以直接ne...

ASP.NET 2021-06-21 30 0 0 阅读全文

.Net数据库操作框架SqlSugar的简单入门

介绍SqlSugar是一款老牌.NET数据库操作框架,由果糖大数据科技团队维护和更新,Githubstar数仅次于EF和Dapper优点:简单易用、功能齐全、高性能、轻量级、服务齐全、有专业技术支持一天18小时服务支持数据库:MySql、SqlServer、Sqlite、Oracle、postgre...

ASP.NET 2021-04-30 31 0 0 阅读全文

Asp.Net Core Webapi文件上传功能的实现

最近开发一个新项目,使用了asp.netcore2.0,采用webapi开发后台,postgresql为数据库。最先来的问题就是上传文件的问题。POST文件的一些坑使用默认模板创建webapi的controller后,post请求,默认有//POSTapi/values[HttpPost]publi...

ASP.NET 2021-04-05 34 0 0 阅读全文

ASP.NET Core自动生成小写破折号路由的实现方法

默认情况下,ASP.NETCore使用如http://localhost:5000/HomeIndex类的大驼峰路由。但是如果想使用小写的路由,并且这些路由用破折号分隔:http://localhost:5000/home-index它们比较常见且一致。举例.NET常见路由http://localh...

ASP.NET 2021-04-09 27 0 0 阅读全文

如何在ASP.NET Core中使用HttpClientFactory

ASP.NetCore是一个开源的,跨平台的,轻量级模块化框架,可用它来构建高性能的Web程序,这篇文章我们将会讨论如何在ASP.NetCore中使用HttpClientFactory。为什么要使用HttpClientFactory可以用HttpClientFactory来集中化管理HttpClie...

ASP.NET 2021-04-09 21 0 0 阅读全文

详解如何在ASP.NET Core中使用IHttpClientFactory

利用IHttpClientFactory可以无缝创建HttpClient实例,避免手动管理它们的生命周期。当使用ASP.NetCore开发应用程序时,可能经常需要通过HttpClient调用WebAPI的方法以检查终结点是否正常工作。要实现这一点,通常需要实例化HttpClient并使用该实例来调用...

ASP.NET 2021-03-27 26 0 0 阅读全文

如何在.NET Core中为GRPC服务设计消息文件(Proto)

如何在.NETCore中为gRPC服务设计消息使用协议缓冲区规范定义gRPC服务非常容易,但从需求转换为.NETCore,然后管理服务的演变时,需要注意几件事。创建gRPC服务的核心是.proto文件,该文件以与语言无关的格式描述了该服务。使用.proto文件,VisualStudio可以为您的服务...

ASP.NET 2021-05-07 25 0 0 阅读全文

Asp.Net Core 3.0中使用Swagger的方法与问题

Intro#上次更新了asp.netcore3.0简单的记录了一下swagger的使用,那个项目的api比较简单,都是匿名接口不涉及到认证以及api版本控制,最近把另外一个api项目升级到了3.0,还是遇到了一些问题,这里单独写一篇文章介绍,避免踩坑。Swagger基本使用#swagger服务注册:...

ASP.NET 2021-04-30 35 0 0 阅读全文

.Net Core中ObjectPool的使用与源码解析

一、对象池运用对象池化技术可以显著地提升性能,尤其是当对象的初始化过程代价较大或者频率较高。下面是ObjectPool源码中涉及的几个类。当你看过.NetCore源码很多时,你会发现,微软的开发很多都是这种模式,通过Policy构建Provider,通过Provider创建最终的类。二、使用这个组件...

ASP.NET 2021-04-30 24 0 0 阅读全文