.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧。
中文介绍
中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。
AutoMapper
AutoMapper 是一款基于约定的从对象到对象的映射器。它用于解决对象间进行赋值时编写和测试枯燥乏味的代码。
利用简单的约定规则,AutoMapper 消除了成百上千的代码,这强化了开发者的 DTO 设计,使得其更加容易测试对象映射关系。
项目详情
- 官网地址
- 项目源码
- 项目许可证: MIT
- NuGet
- 项目联系人: Jimmy Bogard, Lucian Bargaoanu, and Tyler Carlson
相关链接
- 项目文档
- 参与贡献
笔者简评
单进程内的多层次结构设计出来之后,对象间映射几乎成为一个不可避免的问题。
直接使用 new
和 =
就能实现的问题,为何还要采用一个类库来解决呢?
软件开发不变的便是变化,原生的办法并不是不好写,而是改起来困难,特别需要进行字段改动和特殊功能的时候,此时,使用 AutoMapper 这样的类库可以省下不少麻烦。
当然,绝大多数的环境下使用 Profile 和 DynamicMap 几乎就能够满足需求。
但是也千万不要忽略研究 AutoMapper 提供的高级特性:对象扁平化、值工厂、Ioc 集成、映射启动时检查等等,利用好这些高级特性,也能减少不少代码量。
英文介绍
AutoMapper
AutoMapper is a convention-based, object-to-object mapper. It replaces that boring object value copying code that’s both tedious to write and test.
With straightforward conventions, AutoMapper removes hundreds or thousands of lines of code, enforcing a policy on your DTO design and making it simple to test your mappings.
Project Details
- Website
- Source
- License: MIT
- NuGet
- Project Leads: Jimmy Bogard, Lucian Bargaoanu, and Tyler Carlson
Quicklinks
- Documentation
- Contribute
以上《英文介绍》摘录自 .NET Foundation 的项目介绍 。原文受原项目许可证保护。## 中文介绍
中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。
Microsoft Azure SDK for .NET
Microsoft Azure SDK for .NET 使开发者构建.Net 应用程序时能够受益于可伸缩的云计算资源。
项目详情
- 官方网站
- 项目源码
- 许可证类型: Apache License 2.0
- 项目联系人: Brady Gaster
相关链接
- 参与贡献
- 开发文档
- 参与讨论
- 官方论坛
笔者简评
朴实无华:用于对接 Azure 云的 SDK。
英文介绍
Microsoft Azure SDK for .NET
The Microsoft Azure SDK for .NET allows you to build .NET applications that take advantage of scalable cloud computing resources.
Project Details
- Project Info Site
- Project Code Site
- Project License Type: Apache License 2.0
- Project Main Contact: Brady Gaster
Quicklinks
- Contribute
- Documentation
- Discussions
- User Forum
以上《英文介绍》摘录自 .NET Foundation 的项目介绍 。原文受原项目许可证保护。## 中文介绍
中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。
Microsoft Azure WebJobs SDK
The Azure WebJobs SDK is a framework that simplifies the task of writing background processing code that runs in Azure WebJobs. It includes a declarative binding and trigger system that works with Azure Storage Blobs, Queues and Tables as well as Service Bus. The binding system makes it incredibly easy to write code that reads or writes Azure Storage objects. The trigger system automatically invokes a function in your code whenever any new data is received in a queue or blob. The SDK also provides an integrated Dashboard experience in the Azure management portal, with rich monitoring and diagnostics information for your WebJob runs.
Azure WebJobs SDK 是一个开发框架,用于简化开发运行于 Azure WebJobs 之上后台运行任务。
它包括有可声明使用的绑定系统和触发器系统,这些系统基于 Azure Storage Blobs、 Queues 、 Tables 以及 Service Bus。绑定系统能够是的编写用于读写 Azure Storage 对象的代码变得极为简单。触发器系统能够当新数据被队列或者存储接受时,在代码中自动调用一个函数。
该 SDK 同时也提供了集成于 Azure 管理门户的仪表盘,通过仪表盘可以多方面的监控和查看 WebJob 的相关诊断信息。
项目详情
- 官方网站
- 许可证类型: MIT
- 项目联系人: David Ebbo
相关链接
- 参与贡献
- 项目文库
- Azure WebJobs 开发文档
- Stack Overflow
- 项目论坛
- 用户反馈
笔者简评
WebJobs 可以理解为一种能够后台任务,其可以被 Azure 当中的多种数据源进行触发并工作。该项目包含的 SDK 便是开发该类任务的 SDK。
其作用强依赖与 Azure 云提供的相关功能。
英文介绍
Microsoft Azure WebJobs SDK
The Azure WebJobs SDK is a framework that simplifies the task of writing background processing code that runs in Azure WebJobs. It includes a declarative binding and trigger system that works with Azure Storage Blobs, Queues and Tables as well as Service Bus. The binding system makes it incredibly easy to write code that reads or writes Azure Storage objects. The trigger system automatically invokes a function in your code whenever any new data is received in a queue or blob. The SDK also provides an integrated Dashboard experience in the Azure management portal, with rich monitoring and diagnostics information for your WebJob runs.
Project Details
- Project Code Site
- Project License Type: MIT
- Project Main Contact: David Ebbo
Quicklinks
- Contribute
- Project Wiki
- Azure WebJobs Documentation
- Stack Overflow
- User Forum
- User Voice
以上《英文介绍》摘录自 .NET Foundation 的项目介绍 。原文受原项目许可证保护。
其他项目
- Akka.NET
- AngleSharp
- ASP.NET SignalR
- ASP.NET MVC, Web API and Web Pages Razor
- ASP.NET Ajax Control Toolkit
- ASP.NET Core