-
使用 nuget server 的 API 来实现搜索安装 nuget 包
所属栏目:[asp.Net] 日期:2020-12-16 热度:88
使用 nuget server 的 API 来实现搜索安装 nuget 包 Intro nuget 现在几乎是 dotnet 开发不可缺少的一部分了,还没有用过 nuget 的就有点落后时代了,还不快用起来 nuget 是 dotnet 里的包管理机制,类似于前端的 npm ,php 的 composer,java 里的 maven ..[详细]
-
asp.net core 从 3.1 到 5.0
所属栏目:[asp.Net] 日期:2020-12-16 热度:167
asp.net core 从 3.1 到 5.0 Intro 就在前几天,微软宣布了 .NET5 发布了 RC1 版本,这也意味着 .NET5 的开发基本稳定了,正式发布之前,不会再新增新的 Feature,只会专注于修复 BUG 提高稳定性。 对于开发者来说,RC版本的发布也意味着功能的稳定,可以上[详细]
-
efcore 新特性 SaveChanges Events
所属栏目:[asp.Net] 日期:2020-12-16 热度:193
efcore 新特性 SaveChanges Events Intro 昨天早上看到之前关注的一个 efcore 的 issue 被 closed ,于是看了一眼, ef core 新合并了一个 PR,在 DbContext 中增加了 SaveChanges 相关的几个事件,具体的变更可以参数 PR https://github.com/dotnet/efcore/[详细]
-
在 Xunit 中使用依赖注入
所属栏目:[asp.Net] 日期:2020-12-16 热度:137
在 Xunit 中使用依赖注入 Intro 之前写过一篇 xunit 的依赖注入相关的文章,但是实际使用起来不是那么方便 今天介绍一个基于xunit和微软依赖注入框架的“真正”的依赖注入使用方式 ——— Xunit.DependencyInjection ,来自大师的作品,让你在测试代码里使用[详细]
-
设计模式中的那些工厂
所属栏目:[asp.Net] 日期:2020-12-16 热度:175
设计模式中的那些工厂 Intro 设计模式中有几个工厂模式,聊一聊这几个工厂模式的各自用法和使用示例,工厂模式包含简单工厂,抽象工厂,工厂方法,这些均属于创建型模式, 所谓创建型模式,就是说这几个设计模式是用来创建对象的。 简单工厂 首先来说一说,[详细]
-
打造更好用的 EF 自动审计
所属栏目:[asp.Net] 日期:2020-12-16 热度:183
打造更好用的 EF 自动审计 Intro 上次基于 EF Core 实现了一个自动审计的功能,详细可以参考 https://www.cnblogs.com/weihanli/p/auto-audit-for-entity-framework.html ,虽然说多数情况下可以适用,但是因为要显式继承于一个 AuditDbContextBase 或 Audit[详细]
-
EF Core 数据变更自动审计设计
所属栏目:[asp.Net] 日期:2020-12-16 热度:154
EF Core 数据变更自动审计设计 Intro 有的时候我们需要知道每个数据表的变更记录以便做一些数据审计,数据恢复以及数据同步等之类的事情, EF 自带了对象追踪,使得我们可以很方便的做一些审计工作,每次变更发生了什么变化都变得很清晰,于是就基于 EF 封装[详细]
-
浅析微软的网关项目 -- ReverseProxy
所属栏目:[asp.Net] 日期:2020-12-16 热度:77
浅析微软的网关项目 ReverseProxy Intro 最近微软新开了一个项目 ReverseProxy ,也叫做 YARP(A Reverse Proxy) 官方介绍如下: YARP is a reverse proxy toolkit for building fast proxy servers in .NET using the infrastructure from ASP.NET and .NET.[详细]
-
结合 AOP 轻松处理事件发布处理日志
所属栏目:[asp.Net] 日期:2020-12-16 热度:94
结合 AOP 轻松处理事件发布处理日志 Intro 前段时间,实现了 EventBus 以及 EventQueue 基于 Event 的事件处理,但是没有做日志(EventLog)相关的部分,原本想增加两个接口, 处理事件发布日志和事件处理日志,最近用了 AOP 的思想处理了 EntityFramework[详细]
-
动手写一个简版 asp.net core
所属栏目:[asp.Net] 日期:2020-12-16 热度:118
动手写一个简版 asp.net core Intro 之前看到过蒋金楠老师的一篇 200 行代码带你了解 asp.net core 框架,最近参考蒋老师和 Edison 的文章和代码,结合自己对 asp.net core 的理解 ,最近自己写了一个 MiniAspNetCore ,写篇文章总结一下。 HttpContext Http[详细]
-
让 .NET 轻松构建中间件模式代码(二)
所属栏目:[asp.Net] 日期:2020-12-16 热度:111
让 .NET 轻松构建中间件模式代码(二)--- 支持管道的中断和分支 Intro 上次实现了一个基本的构建中间件模式的中间件构建器,现在来丰富一下功能,让它支持中断和分支,分别对应 asp.net core 中的 applicationBuilder.Run 和 applicationBuilder.MapWhen 实[详细]
-
基于 Roslyn 实现一个简单的条件解析引擎
所属栏目:[asp.Net] 日期:2020-12-16 热度:75
基于 Roslyn 实现一个简单的条件解析引擎 Intro 最近在做一个勋章的服务,我们想定义一些勋章的获取条件,满足条件之后就给用户颁发一个勋章,定义条件的时候会定义需要哪些参数,参数的类型,获取勋章的时候会提供锁需要的参数,有一些内置的参数,内置的参[详细]
-
给 EF Core 查询增加 With NoLock
所属栏目:[asp.Net] 日期:2020-12-16 热度:193
给 EF Core 查询增加 With NoLock Intro EF Core 在 3.x 版本中增加了 Interceptor ,使得我们可以在发生低级别数据库操作时作为 EF Core 正常运行的一部分自动调用它们。 例如,打开连接、提交事务或执行命令时。 所以我们可以自定义一个 Interceptor 来记[详细]
-
实现一个基于动态代理的 AOP
所属栏目:[asp.Net] 日期:2020-12-16 热度:120
实现一个基于动态代理的 AOP Intro 上次看基于动态代理的 AOP 框架实现,立了一个 Flag, 自己写一个简单的 AOP 实现示例,今天过来填坑了 目前的实现是基于 Emit 来做的,后面有时间再写一个基于 Roslyn 来实现的示例 效果演示 演示代码: 切面逻辑定义: pu[详细]
-
优化委托的 `DynamicInvoke`
所属栏目:[asp.Net] 日期:2020-12-16 热度:81
优化委托的 DynamicInvoke Intro 委托方法里有一个 DynamicInvoke 的方法,可以在不清楚委托实际类型的情况下执行委托方法,但是用 DynamicInvoke 去执行的话会比直接用 Invoke 的方法会慢上很多,差了两个数量级,所以在知道委托类型的情况下尽可能使用 Inv[详细]
-
EventBus/EventQueue 再思考
所属栏目:[asp.Net] 日期:2020-12-16 热度:148
EventBus/EventQueue 再思考 Intro 之前写过两篇文章,造轮子系列的 EventBus / EventQueue ,回想起来觉得当前的想法有点问题,当时对 EvenStore 可能有点误解,有兴趣可以参考 https://www.cnblogs.com/weihanli/p/implement-a-simple-event-bus.html/http[详细]
-
让 .NET 轻松构建中间件模式代码
所属栏目:[asp.Net] 日期:2020-12-16 热度:61
让 .NET 轻松构建中间件模式代码 Intro 在 asp.net core 中中间件的设计令人叹为观止,如此高大上的设计何不集成到自己的代码里呢。 于是就有了封装了一个简单通用的中间件模板的想法,以后有需要的时候就可以拿来即用。 接口定义 这里按执行的委托是同步还[详细]
-
FluentAspects -- 基于 Fluent API 的 Aop
所属栏目:[asp.Net] 日期:2020-12-16 热度:150
FluentAspects -- 基于 Fluent API 的 Aop Intro 上次我们做了一个简单的 AOP 实现示例,但是实现起来主要是基于 Attribute 来做的,对于代码的侵入性太强,于是尝试实现基于 Fluent API 的方式来做 AOP 。 抽象 InterceptorResolver 原来获取方法执行的 Int[详细]
-
dotnetcore3.1 WPF 中使用依赖注入
所属栏目:[asp.Net] 日期:2020-12-16 热度:122
dotnetcore3.1 WPF 中使用依赖注入 Intro 在 ASP.NET Core 中默认就已经集成了依赖注入,最近把 DbTool 迁移到了 WPF dotnetcore 3.1, 在 WPF 中我们也希望能够使用依赖注入,下面来介绍一下如何在 WPF dotnetcore3.1 中使用依赖注入 App.xaml 配置 打开 Ap[详细]
-
给微软的日志框架写一个基于委托的日志提供者
所属栏目:[asp.Net] 日期:2020-12-16 热度:134
动手造轮子:给微软的日志框架写一个基于委托的日志提供者 Intro 微软的日志框架现在已经比较通用,有时候我们不想使用外部的日志提供者,但又希望提供一个比较简单的委托就可以实现日志记录,于是就有了后面的探索和实现。 Solution 基于委托的 LoggerProvi[详细]
-
dotnetcore3.1 WPF 实现多语言
所属栏目:[asp.Net] 日期:2020-12-16 热度:106
dotnetcore3.1 WPF 实现多语言 Intro 最近把 DbTool 从 WinForm 迁移到了 WPF,并更新到了 dotnet core 3.1,并实现了基于 Microsoft.Extensions.Localization 实现了基本的多语言支持。下面来分享一下如何来实现 服务注册 如果不熟悉如何在 WPF 中使用依赖[详细]
-
给微软的依赖注入框架写一些扩展方法
所属栏目:[asp.Net] 日期:2020-12-16 热度:113
给微软的依赖注入框架写一些扩展方法 Intro 现在在项目里大多都是直接使用微软的依赖注入框架,而微软的注入方式比较简单,不如 AutoFac 使用起来灵活,于是想给微软的依赖注入增加一些扩展,使得可以像AutoFac 一样比较灵活的注册服务 Extensions RegisterT[详细]
-
一个支持 CodeFirst/DbFirst/ModelFirst 的数据库小工具
所属栏目:[asp.Net] 日期:2020-12-16 热度:103
一个支持 CodeFirst/DbFirst/ModelFirst 的数据库小工具 Intro DbTool 是一个支持 CodeFirst/DbFirst/ModelFirst 的数据库小工具,原本是基于 dotnet framework WinForm 实现的,在 1.1.0 版本更新中使用 dotnet core 3.1 基于 WPF 重写了,并实现了一个简单[详细]
-
.NET 下基于动态代理的 AOP 框架实现揭秘
所属栏目:[asp.Net] 日期:2020-12-16 热度:160
.NET 下基于动态代理的 AOP 框架实现揭秘 Intro 之前基于 Roslyn 实现了一个简单的条件解析引擎,想了解的可以看这篇文章 https://www.cnblogs.com/weihanli/p/roslyn-based-condition-eval-engine.html 执行过程中会根据条件的不同会在运行时创建一个类,每[详细]
-
小心 HttpClient 中 FormUrlEncodeContent 的 bug
所属栏目:[asp.Net] 日期:2020-12-16 热度:54
小心 HttpClient 中 FormUrlEncodeContent 的 bug Intro 最近发现活动室预约项目里的上传图片有时候会有问题,周末找时间测试了一下,发现小图片的上传没问题,大图片上传会有问题,而且异常信息还很奇怪, System.UriFormatException: Invalid URI: The Uri[详细]
- asp.net – 如何绑定一个MemoryStream到asp:图像
- asp.net-mvc – 不显着的验证不工作在动态添加的
- Asp.net生成Excel文件并下载(更新:解决使用迅雷
- ASP.NET性能在32位/ 64位服务器之间降低
- ASP.NET Ajax控件套件与JQuery
- asp.net – window.location更改失败AJAX调用
- asp.net – 使用[WebMethod]转义的JSON响应
- asp.net-mvc-3 – ASP.NET MVC DropDownListFor从
- asp.net – 在SQL Server中将日期转换为刻度
- asp.net-mvc-2 – 在IIS 7.5上启用html PUT方法