当前位置:首页 > 技术分析 > 正文内容

8个常用的.net(c#)类库(c#使用的类库就是提供的类库)

ruisui883个月前 (02-03)技术分析15

微软发布.NET框架已经21年了,现在还是不少企业的首选开发框架。尤其最近几年微软.net全面拥抱linux以及今年即将发布的.net 6基本支持所有的移动平台开发,必定能解决很多开发者跨平台的苦恼。

今天给大家说一下我们产品中用的比较多8个的.NET库,

Swashbuckle

此.NET库可帮助您管理和测试.NET web API。它还使用Swagger为应用程序构建API文档。对于新手来说,Swagger是一组描述RESTAPI状态的规则。它们都是机器可读的,并且可以被人理解。

主要功能包括:

  1. 提供与Swagger UI的无缝集成
  2. 对身份验证OAuth2方案、API密钥和基本身份验证的广泛支持
  3. 对XML注释的支持

Swashback有三个主要组件:

  1. Swashback.AspNetCore.Swagger-这是一个Swagger对象模型,提供了将Swagger文档API公开为JSON端点(即公开可用的URL)的功能。
  2. Swashback.AspNetCore.swagggergen-提供生成API的对象、返回类型和工作流的功能。
  3. Swashback.AspNetCore.SwaggerUI-这是Swashback提供的SwaggerUI的嵌入式版本。

FluentEmail

FluentEmail是一个开源的.Net库,可帮助您在不到10分钟的时间内在.Net应用程序中实现电子邮件功能。它支持Razor用于预构建电子邮件模板,并通过SMTP协议通过常用的电子邮件传递服务(如SendGrid和MailGun)方便地发送邮件。它使您能够更好地控制通过电子邮件传递服务发送邮件的方式。

FluentEmail包包括:

  1. FluentEmail.core-这是一个基本包,有助于通过SMTP发送电子邮件。因为它是基本包,所以它只包括基本默认值和域模型。
  2. FluentEmail.mailgun-用于使用mailgun REST API发送电子邮件。
  3. FluentEmail.SendGrid-用于通过SendGrid REST API发送电子邮件。
  4. FluentEmail.SMTP-通过SMTP协议发送电子邮件。

xUnit

Xunit是一个免费的、开源的、以社区为中心的测试工具,它允许测试小型的独立组件,而不是在程序的大块后面进行测试。这使得设计目标和简单性与框架的特性保持一致。安装此软件包将安装以下依赖项:

  1. Xunit.Core-包括所有用于编写单元测试用例的库,用于测试应用程序的所有可能场景
  2. Xunit.assert-包括用于验证条件是否有效的断言库。
  3. Xunit.analyzers-安装此软件包可以为测试团队提供代码分析器,帮助他们在编写健壮的测试用例时发现并修复频繁出现的问题和其他错误。

App Metrics

App Metrics是一个跨平台、开源的库,它记录了应用程序中的大量指标。这包括在特定时间登录的用户数、请求数、DB查询的运行时间、API的响应时间、可用的可用内存等等。它支持一系列实用程序,如计数器、计时器和直方图,以测量.NET应用程序、MVC或web API的每个端点的性能和错误。

常见的基于App.Metrics+InfluxDB+Grafana实现统一性能监控。

HashLib

Hashlib包含几个哈希算法的实现,您可以使用这些算法对.NET应用程序中的文件、流和所有类型的数据进行哈希。哈希通常用于使用哈希键以更快的速度从数据库中检索特定数据。

散列键用于获取数据的直接位置,而不是使用索引结构。总之,利用HashLib库可以简化应用程序中元素的搜索。

AutoMapper

Automapper是对象映射器的对象。通过这种方式,我们可以将一种类型的一个对象的属性映射到另一个对象的属性。automapper广泛用于使用DTO(数据传输对象)的情况。通过这种方式,可以很容易地将对象属性从视图(View)对象分配给DTO对象,并将DTO对象分配给域(Model)模型。

EntityFramework/Dapper

Entity Framework (EF)和Dapper都是ORM,使.NET开发人员能够使用特定于域的对象处理关系数据。就性能而言,Dapper拥有Micro ORM之王(King of Micro ORM)的称号。实体框架允许通过编写代码或使用EF设计器中的boxes and lines来创建模型,并生成新的数据库。

Polly

这个基本上是分布式系统中必不可少的组件,和Spring cloud类似。Polly is a library that allows developers to express resilience and transient fault handling policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation, and Fallback in a fluent and thread-safe manner.

当然还有一些其他常用的类库,newtonsoft,castle,moq,serilog,nunit等等。

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/1333.html

分享给朋友:

“8个常用的.net(c#)类库(c#使用的类库就是提供的类库)” 的相关文章

Lindroid开源应用:在安卓手机 / 平板上安装 Linux发行版

IT之家 6 月 19 日消息,Erfan Abdi 本月发布了 Lindroid 开源应用程序,让用户可以在安卓手机上安装 GNU / Linux 发行版,在完全支持手机硬件的情况下可以运行 Linux 应用程序。Lindroid 开源应用程序就是将 Linux 放入容器中,使用 Halium 等...

GitLab-合并请求

描述合并请求可用于在您对项目进行的其他人员之间交换代码,并轻松与他们讨论更改。合并请求的步骤步骤1-在创建新的合并请求之前,GitLab中应该有一个创建的分支。您可以参考本章来创建分支-步骤2-登录到您的GitLab帐户,然后转到“ 项目”部分下的项目 -步骤3-单击“ 合并请求”选项卡,然后单击“...

编码 10000 个小时后,开发者悟了:“不要急于发布!”

【CSDN 编者按】在软件开发的道路上,时间是最好的老师。根据“一万小时定律”,要成为某个领域的专家,通常需要大约一万小时的刻意练习。本文作者身为一名程序员,也经历了一万小时的编程,最终悟出了一个道理:慢即是快,重视架构设计和代码质量,确保每一行代码都经得起时间的考验。作者 | Sotiris Ko...

7 招教你轻松搭建以图搜图系统

作者 | 小龙责编 | 胡巍巍当您听到“以图搜图”时,是否首先想到了百度、Google 等搜索引擎的以图搜图功能呢?事实上,您完全可以搭建一个属于自己的以图搜图系统:自己建立图片库;自己选择一张图片到库中进行搜索,并得到与其相似的若干图片。Milvus 作为一款针对海量特征向量的相似性检索引擎,旨在...

高效使用 Vim 编辑器的 10 个技巧

在 Reverb,我们使用 MacVim 来标准化开发环境,使配对更容易,并提高效率。当我开始使用 Reverb 时,我以前从未使用过 Vim。我花了几个星期才开始感到舒服,但如果没有这样的提示,可能需要几个月的时间。这里有十个技巧可以帮助你在学习使用 Vim 时提高效率。1. 通过提高按键重复率来...

2024年,不断突破的一年

迈凯伦F1车队不久前拿下了2024年度总冠军,距离上一次还是二十几年前。在此期间,另一领域内,一个充满革新活力的腕表品牌——RICHARD MILLE理查米尔,正不断发展,与F1运动、帆船、古董车展等领域,共享着对速度与极限的无尽向往。RICHARD MILLE的发展与F1车手们在赛道上的卓越表现交...