分类 .NET 下的文章

.NET 6全局配置让输出的时间格式化

在我们返回数据的时候,我们返回的Json时间是很长的一串,很明显这对前端并不友好,所以我们要对这个时间进行格式化处理。

{
    "date": "2022-01-13T23:29:26.8882492+08:00",
    "temperatureC": 48,:
    "temperatureF": 118,
    "summary": "Sweltering"
}

阅读剩余部分

ASP.NET Core集成Autofac

ASP.NET Core 支持依赖关系注入 (DI) 软件设计模式,这是一种在类及其依赖关系之间实现控制反转 (IoC) 的技术。默认服务容器是 Microsoft.Extensions.DependencyInjection

内置的服务容器一般能满足简单的框架和部分消费者应用的需求。 建议使用内置容器,除非你需要的特定功能不受内置容器支持,例如:属性注入、基于名称的注入、子容器、自定义生存期管理、对迟缓初始化的 Func<T> 支持、基于约定的注册。而大部分情况下,实际项目中往往是比较复杂的,所以可以使用其他第三方IOC容器,如Autofac;Autofac 是.Net世界中最常用的依赖注入框架之一。相比.Net Core标准的依赖注入库, 它提供了更多高级特性, 比如动态代理和属性注入。

阅读剩余部分

Winform程序中创建XML文件的三种方式

<?xml version="1.0" encoding="gb2312"?>
<FilesInformation>
  <version>1.0.1818.42821</version>
  <description>说明</description>
  <FileItem  
  FileName="name"
  FileVersion="sdf"
  FileLength="sdf"
  FileCreationTime="sd"
  />
</FilesInformation>

string path = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;

阅读剩余部分

单元测试时如何Mock IHttpClientFactory

前言

编写单元测试时,常常需要使用Mock框架(例如Moq)生成测试类的依赖接口的"模拟"实现,并验证接口是否按预期使用:

_mediatorMock = new Mock<IMediator>();
_mediatorMock.Setup(x => x.Send(It.IsAny<IdentifiedCommand<CancelOrderCommand, bool>>(), default(CancellationToken)))
    .Returns(Task.FromResult(true));

但是,对于IHttpClientFactory就不仅仅是Mock<IHttpClientFactory>这么简单了!

阅读剩余部分