【翻译】Asp.net Core介绍

ASP.NET Core is a significant redesign of ASP.NET. This topic introduces the new concepts in ASP.NET Core and explains how they help you develop modern web apps.

Asp.net Core是重新设计过得新一代Asp.Net。此篇文章介绍Asp.net Core 如何帮助你开发先进的web应用。

What is ASP.NET Core?

什么是Asp.net Core

ASP.NET Core is a new open-source and cross-platform framework for building modern cloud based internet connected applications, such as web apps, IoT apps and mobile backends. ASP.NET Core apps can run on .NET Core or on the full .NET Framework. It was architected to provide an optimized development framework for apps that are deployed to the cloud or run on-premises. It consists of modular components with minimal overhead, so you retain flexibility while constructing your solutions. You can develop and run your ASP.NET Core apps cross-platform on Windows, Mac and Linux. ASP.NET Core is open source at GitHub.

Asp.Net Core 是一个新的、开源的、跨平台的开发框架,为了更好的构建基于云网络的先进应用,比如web app、IoT(物联网) app和移动后端。Asp.net Core应用能够运行在.Net Core或者.Net Framework环境下。这种新架构为应用部署到云或者本地提供了高性能开发框架。它是由模块化组件构成,这样你就能很灵活的构建自己的解决方案。你可以在Windows、Mac和Linux下开发和运行你的Asp.net Core 应用。Asp.Net Core在GitHub上已经开源。

Why build ASP.NET Core?

为什么构建Asp.Net Core?

The first preview release of ASP.NET came out almost 15 years ago as part of the .NET Framework. Since then millions of developers have used it to build and run great web apps, and over the years we have added and evolved many capabilities to it.

作为.Net框架的一部分,Asp.Net从第一个预览版到现在已经过去15年了。数以百万计的开发者使用它开发和运行优秀的web app,这么多年来我们也不断的升级和添加更多的功能。

ASP.NET Core has a number of architectural changes that result in a much leaner and modular framework. ASP.NET Core is no longer based on System.Web.dll. It is based on a set of granular and well factored NuGet packages. This allows you to optimize your app to include just the NuGet packages you need. The benefits of a smaller app surface area include tighter security, reduced servicing, improved performance, and decreased costs in a pay-for-what-you-use model.

Asp.Net Core从架构上有很多的改变,这些改变从而使它成为一个灵活性和模块化的框架。Asp.Net Core 不再基于System.Web.dll。它是基于颗粒状和分解的 NuGet 包。这使你可以优化你的应用程序仅仅包含所需的 NuGet 包。这种pay-for-what-you-use(按需使用)模式的好处包括加强安全、减少维护、提高性能和降低成本。

With ASP.NET Core you gain the following foundational improvements:

使用Asp.net Core你将获得以下改进的功能:

  • A unified story for building web UI and web APIs
  • web UI和web Apis使用统一的库
  • Integration of modern client-side frameworks and development workflows
  • 现代客户端框架和开发工作流的集合
  • A cloud-ready environment-based configuration system
  • 一个适合云计算环境的配置系统
  • Built-in dependency injection
  • 内置的依赖注入
  • New light-weight and modular HTTP request pipeline
  • 全新的轻量级和模块化HTTP请求管道
  • Ability to host on IIS or self-host in your own process
  • 在自己的进程中运行IIS或者Self-host的能力
  • Built on .NET Core, which supports true side-by-side app versioning
  • 以.Net Core为基础,支持真正的多应用版本管理
  • Ships entirely as NuGet packages
  • 完全使用NuGet包管理
  • New tooling that simplifies modern web development
  • 新的简化的现代化web开发工具
  • Build and run cross-platform ASP.NET apps on Windows, Mac and Linux
  • 在Windows,Mac和Linux下构造和运行多平台的Asp.Net的应用
  • Open source and community focused
  • 开源社区共同管理

Build web UI and web APIs using ASP.NET Core MVC

在Asp.Net Core MVC中构建Web UI和Web APIs

  • You can create well-factored and testable web apps that follow the Model-View-Controller (MVC) pattern. See MVC and Testing.
  • 你能创建一个遵循MVC模式的可分解和可测试的Web应用。详见 MVCTesting
  • You can build HTTP services that support multiple formats and have full support for content negotiation. See Formatting Response Data
  • 你可以构建支持多格式和完全支持内容协议的HTTP服务。详见 Formatting Response Data
  • Razor provides a productive language to create Views
  • Razor 提供了一种创建视图的高效语言。
  • Tag Helpers enable server-side code to participate in creating and rendering HTML elements in Razor files
  • 在Razor文件中,标签助手使服务器端代码参与创建和渲染Html元素成为可能。
  • You can create HTTP services with full support for content negotiation using custom or built-in formatters (JSON, XML)
  • 你可以创建完全支持使用自定义或者内置格式化(Json,Xml)内容协商的Http服务。
  • Model Binding automatically maps data from HTTP requests to action method parameters
  • 自动的从Http请求中的action方法参数中映射数据进行模型绑定。
  • Model Validation automatically performs client and server side validation
  • 自动执行前端和服务端的模型验证。

Client-side development

前端开发

ASP.NET Core is designed to integrate seamlessly with a variety of client-side frameworks, including AngularJS, KnockoutJSand Bootstrap. See Client-Side Development for more details.

Asp.Net Core的核心目的是为了和各式各样的前端框架无缝连接,包括了AngularJS,KnockoutJSBootstrap。详见Client-side Development

写在最后

接触Asp.Net大概已经十年了,经历了每个版本,这次Asp.Net Core的推出让我非常兴奋,感觉.Net工程师的春天来了,经历那么多知道.Net和Java之间虽然只是语言的差别,但在工作选择上差别实在太大,现在好了,春天到了,相信不就将来.Net和Java将会平分秋色。

第一次翻译,基本上加入的都是自己的理解,有些硬翻译可能不对,希望大家能够发邮件给我,后续会把这个翻译系列做完。

原文链接:https://docs.microsoft.com/zh-cn/aspnet/core/

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张善友的专栏

.NET 4.0 版本号

.NET 4.5.1, .NET 4.5 和 .NET 4.0 均基于 .NET 4.0 CLR,而 .NET 4.5 对 CLR进行了升级和Bug修复. .N...

4856
来自专栏张善友的专栏

基于Mono跨平台移动应用开发框架发布Xamarin 3.0

跨平台移动应用开发框架Xamarin可以让你完全用C#编写你的应用程序,在iOS、Android、Windows Phone 8、Windows8和mac平台上...

2216
来自专栏张善友的专栏

开源Mono框架将C#编程带到iPhone、Android和Wii

Mono,作为.NET运行库的开源实现,正在将微软的技术带到未曾预料到的地方,包括iPhone,Android和Wii。 根据Novell公司的首席Mono...

2917
来自专栏张善友的专栏

在传统.NET Framework 上运行ASP.NET Core项目

新的项目我们想用ASP.NET Core来开发,但是苦于我们历史的遗产很多,比如《使用 JavaScriptService 在.NET Core 里实现DES加...

2649
来自专栏张善友的专栏

mono 1.2.3发布了

    Mono于昨天发布了1.2.3版本,这个版本的还是修复bug和实现API,这个版本共实现了1993个API,你可以用Mono的一个工具Moma,Mom...

2099
来自专栏软件开发

DotNet 资源大全中文版(Awesome最新版)

Awesome系列的.Net资源整理。awesome-dotnet是由quozd发起和维护。内容包括:编译器、压缩、应用框架、应用模板、加密、数据库、反编译、I...

7948
来自专栏游戏杂谈

IOS应用提交所需的ICON

如果提交的ipa包中,未包含必要的Icon就会收到类似的通知,为什么偏偏是Icon-76呢?

1072
来自专栏NetCore

[原创]Fluent NHibernate之旅

ORM大家都非常熟悉了吧,我相信也有很多朋友正在用自己或者一些公开的框架,而最常用而且强大的,非Hibernate了(Net中为NHibernate),网上的文...

2486
来自专栏张善友的专栏

在asp.net mvc上应用新ASP.NET图表控件

微软去年11月发布了一个很酷的新ASP.NET服务器控件,<asp:chart />,可以免费用在ASP.NET 3.5中,而且还可以用在asp.net mvc...

3548
来自专栏walterlv - 吕毅的博客

.NET/C# 使窗口永不激活(No Activate 永不获得焦点)

发布于 2018-07-24 06:19 更新于 2018-08...

3952

扫码关注云+社区

领取腾讯云代金券