一起了解 .Net Foundation 项目 No.7
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧。
中文介绍
中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。
Entity Framework
Entity Framework 是一种被推荐用于那先采用 .Net 进行构建的新应用程序数据层访问技术。它是一种对象 - 关系数据映射器(ORM),这使得.Net 开发者可以采用基于领域涉及的对象来访问关系型数据。它消除了很多以往需要开发者进行手写的数据访问代码。
Entity Framework 有两个版本:
Entity Framework 6 是为 .NET Framework 构建的旧版本的 Entity Framework, 其仅仅只能运行于 Windows 上。
Entity Framework Core 是轻量型、可扩展、基于.NET Standard 的新版本,其能够适用于 Windows、Linux 和 macOS 上。
项目详情
- 官网地址
- 源码仓库
- 许可证类型: Apache 2.0
相关链接
Entity Framework 文档:
笔者简评
EF 算得上是在 .NET 为数不多的 ORM 框架中较为主流的一款,甚至于不用多加介绍。
EF 的强大功能能够是开发者在编写数据访问层时减少大量手写 SQL 的情况,一定程度上提高了代码的可维护性。
不过在社区中关于 EF 难用的声音也是此起彼伏。就笔者认为,一个开发工具的难用更加准确的来说应该被描述为 “工具不适用与当前的团队和项目”。
团队水平和项目情况往往是决定技术选型的重要因素。如果团队成员水平难以驾驭诸如延迟加载、导航属性、继承关系、缓存处理等等 EF 的高级特性,那么在项目的不断推进的过程中将会不断产生新的由于框架不熟悉导致的问题。
因此,如果要融会贯通的使用 EF ,仅仅只是运行 Quick Start 是远远不够的。通读文档,充分实践,是用好所有开发工具必要的操作。
英文介绍
Entity Framework
Entity Framework is the recommend data access technology for new applications in .NET. It is an object-relational mapper that enables .NET developers to work with relational data using domain-specific objects. It eliminates the need for most of the data-access code that developers usually need to write.
Entity Framework has two versions:
Entity Framework 6 is the legacy Entity Framework for .NET Framework, that runs only on Windows.
Entity Framework Core is a new, lightweight and extensible .NET Standard based version for .NET applications running Windows, Linux and macOS.
Project Details
- Project Info Site
- Project Code Site
- Project License Type: Apache 2.0
Quicklinks
Entity Framework Documentation:
以上《英文介绍》摘录自 .NET Foundation 的项目介绍 。原文受原项目许可证保护。
中文介绍
中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。
Humanizer
Humanizer 能够满足您所有.Net 关于操作和展示以下类型的需求,包括字符串、枚举、日期、时间、时间跨度、数字和数量。它采用 MIT 进行授权分发。
项目详情
- 官方网站
- 项目源码
- 项目许可证: MIT
- 项目联系人: Mehdi Khalili and Oren Novotny
相关链接
笔者简评
在业务开发中经常出现一个需求:需要将枚举以中文的形式展示在 UI 界面上。
这个需求的一种办法,就是在枚举上定义 DescriptionAttribute ,然后使用方法获取该值以进行展示。
类似以上这种需求,实际上都是为了将计算机定义的形式以人类容易理解的方式进行展示。这也就是该工具库所关注的需求点。
正如简介所指,它能够解决多种类型的展示问题,详细可以阅读项目文档进行了解。
英文介绍
Humanizer
Humanizer meets all your .NET needs for manipulating and displaying strings, enums, dates, times, timespans, numbers and quantities. It is licensed under the MIT (an OSI approved license).
Project Details
- Website
- Source
- License: MIT
- Project Leads: Mehdi Khalili and Oren Novotny
Quicklinks
- Documentation
- Discussions are held on Gitter.
- Contribute
以上《英文介绍》摘录自 .NET Foundation 的项目介绍 。原文受原项目许可证保护。
中文介绍
中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。
IdentityManager
IdentityManager 是一款为开发者或管理员提供在 ASP.NET Core 应用程序中进行用户身份认证信息管理的工具。
它包括有:创建用户、编辑用户信息(密码、邮箱和声明等等)和删除用户等基本功能。
它可以作为 “内建于 Visual Studio 中的 ASP.NET 网站管理工具” 的一个现代化替代方案。
项目详情
- 官方网站
- 项目源码
- 项目许可证: Apache License 2.0 (Apache)
- 项目联系人: Scott Brady
相关链接
- 项目文档
- 参与贡献
- Rock Solid Knowledge(项目维护方官网)
- Scott 的博客
- Brock 的博客
- 聊天室
- Twitter: @rskltd & @scottbrady91 & @brocklallen
笔者简评
首先值得注意的是,这是一个用户开发环境的工具。因此,非常不建议在生产环境使用。而且通常是不需要用到它的。
“内建于 Visual Studio 中的 ASP.NET 网站管理工具” 想必用户的国内开发者并不多。因为绝大多数情况下项目需要自研身份认证系统,而本工具的适用性相当有限,而且与微软原来推崇的 ASP.NET Membership 等老一代身份认证方案有关联,因此,今日的知名度就更小了。
本项目本身是运行于 ASP.NET Core 之上的,默认实现是针对于 ASP.NET Core Identity 。 当然,可以扩展以支持自建的身份认证系统和用户管理方式,但通常国内不会这么做。
笔者建议抱着学习的态度,使用和学习该项目。
英文介绍
IdentityManager
IdentityManager
is a tool for developers and/or administrators to manage the identity
information for users of their applications in ASP.NET Core. This includes
creating users, editing user information (passwords, email, claims, etc.)
and deleting users. It provides a modern replacement for the ASP.NET WebSite
Administration tool that used to be built into Visual Studio.
Project Details
- Project Info Site
- Project Code Site
- Project License Type: Apache License 2.0 (Apache)
- Project Main Contact: Scott Brady
Quicklinks
- Documentation
- Contribute
- Rock Solid Knowledge
- Scott’s blog
- Brock’s blog
- Chat
- Twitter: @rskltd &
@scottbrady91 &
@brocklallen
以上《英文介绍》摘录自 .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
- AutoMapper
- Microsoft Azure SDK for .NET
- Microsoft Azure WebJobs SDK
- BenchmarkDotNet
- Cake
- Chemistry Add-in for Word
- Couchbase Lite for .NET
- DNN Platform
- .NET Compiler Platform Roslyn
- .NET Micro Framework
- .NET SDK For Hadoop
- DotVVM: Component-based MVVM framework for ASP.NET
一起了解 .Net Foundation 项目 No.7的更多相关文章
- 一起了解 .Net Foundation 项目 No.1
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. Akka.NET Akka ...
- 一起了解 .Net Foundation 项目 No.2
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. ASP.NET MVC, ...
- 一起了解 .Net Foundation 项目 No.5
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. Couchbase Lit ...
- 一起了解 .Net Foundation 项目 No.6
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. .NET Micro Fr ...
- 一起了解 .Net Foundation 项目 No.4
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. BenchmarkDotN ...
- 一起了解 .Net Foundation 项目 No.3
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. AutoMapper Au ...
- 一起了解 .Net Foundation 项目 No.8
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. IdentityModel ...
- 一起了解 .Net Foundation 项目 No.9
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. DLR/IronPytho ...
- 一起了解 .Net Foundation 项目 No.10
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. LLILC LLILC ( ...
随机推荐
- java 三元运算
一.格式: 数据类型 变量名称 = 条件判断 ? 表达式a : 表达式b; 二.注意: 1.不是打印操作时,需要 三元运算的右则 2.表达式a和表达式b的值,必须要和变量名称 的数据类型相等 貌似和C ...
- webpack构建工具初始化并运行简单的demo
webpack官网:https://webpack.js.org/ webpack是构建工具 安装webpack的前提:node,npm要安装 初始化项目 首先是初始化项目,创建一个文件夹,并且进入文 ...
- Java多线程:实现API接口创建线程方式详解
先看例子: /**实现Runnable接口创建线程步骤: * 1.创建一个实现Runnable接口的类 * 2.重写Runnable类中抽象的run()方法 * 3.创建实现类的对象 * 4.声明Th ...
- 基准测试--->sysbench
sysbench sysbench简介 sysbench是跨平台的基准测试工具,支持多线程,支持多种数据库:主要包括以下几种测试: cpu性能 磁盘io性能 调度程序性能 内存分配及传输速度 POSI ...
- httpClient爬虫
package httpClient.client; import java.io.File; import java.io.IOException; import java.io.InputStre ...
- mysql-cluster集群搭建步骤
1.从官网下载mysql-cluster安装包: https://dev.mysql.com/downloads/cluster/ 2.解压安装包 #上传到服务器目录/usr/softwares并解压 ...
- python实现ip地址的包含关系判断
python的IPy模块虽然可以实现一些ip地址的判断,但是不是很完美,有些场景根本判断不出来,还会抛出异常,比如一个地址范围和一个ip/掩码,这种不同类型就无法判断. 对此通过自己写函数来实现ip地 ...
- CAD制图系列之怎么画平行线
CAD怎么画平行线 输入O,点空格,输入距离100,选择已知的线,往你要偏移的方向就好! 具体方法如下:1.打开CAD制图 2.输入快捷键O 3.按下空格键 4.输入你所要的距离,例如12,并按下空格 ...
- Spring Boot入门简介-Maven配置
一.简介 -- 简化Spring应用开发的一个框架: -- 整个Spring技术栈的一个大整合: -- J2EE开发的一站式解决方案. 二.背景: ① J2EE笨重的开发.繁多的配置.低下的开发效率. ...
- 实验13:VLAN/TRUNK/VTP/
实验10-1: 划分VLAN Ø 实验目的通过本实验,读者可以掌握如下技能:(1) 熟悉VLAN 的创建(2) 把交换机接口划分到特定VLAN Ø 实验拓扑 实验步骤要配置VLAN,首先要 ...