此内容没有您所选择的语言版本。
Release Notes
Abstract
Chapter 1. Availability 复制链接链接已复制到粘贴板!
.NET Core 1.1 is a general purpose development platform that has several key features many developers find attractive, including automatic memory management and modern programming languages. These features make it easier to build high-quality apps more efficiently. Multiple implementations of .NET Core are available, based on open .NET Standards that specify the fundamentals of the platform.
This availability allows Windows developers to deploy to Red Hat Enterprise Linux without having to learn Red Hat Enterprise Linux and to expand the reach of workloads to Red Hat Enterprise Linux environments. The goal is to provide a safe introduction to a new environment and culture without risk of exposure. Now users of Red Hat Enterprise Linux and Red Hat Enterprise Linux-based Red Hat products can develop and run .NET Core applications directly on Red Hat Enterprise Linux 7, including Red Hat Enterprise Linux Atomic Host and Red Hat OpenShift Container Platform.
The .NET Core 1.1 component (rh-dotnetcore11) is packaged as a Software Collection (SCL) and is available for Red Hat Enterprise Linux 7 in the .NET content set. The RPM is yum installable. Full instructions for installing .NET Core 1.1 on Red Hat Enterprise Linux 7 is available in the .NET Core 1.1 Getting Started Guide.
The .NET Core 1.1 is available in S2I-compatible docker containers and for OpenShift. Full instructions for using .NET Core 1.1 in containers are also available in the .NET Core 1.1 Getting Started Guide.
Chapter 2. .NET Core Overview 复制链接链接已复制到粘贴板!
The .NET Core platform is a general purpose development platform featuring automatic memory management and modern programming languages. It allows users to build high-quality applications efficiently. The .NET Core platform is available in Red Hat Enterprise Linux (RHEL 7) and OpenShift Container Platform via certified containers.
The .NET Core platform offers:
- the ability to follow a microservices-based approach, where some components are built with .NET and others with Java, but all can run on a common, supported platform in Red Hat Enterprise Linux and OpenShift Container Platform.
- the capacity to more easily develop new .NET Core workloads on Microsoft Windows. Customers can deploy and run on either Red Hat Enterprise Linux or Windows Server.
- a heterogeneous datacenter, where the underlying infrastructure is capable of running .NET applications without having to rely solely on Windows Server.
- access to many of the popular development frameworks, such as .NET, Java, Ruby, and Python from within OpenShift Container Platform.
Chapter 3. New Features 复制链接链接已复制到粘贴板!
The .NET Core 1.1 image, dotnet/dotnetcore-11-rhel7, now supports the following environment variables:
- HTTP_PROXY
- HTTPS_PROXY
- NPM_MIRROR
- DOTNET_STARTUP_PROJECT
- DOTNET_PUBLISH
- DOTNET_ASSEMBLY_NAME
- DOTNET_RESTORE_SOURCES
- DOTNET_NPM_TOOLS
- DOTNET_TEST_PROJECTS
- DOTNET_CONFIGURATION
ASPNETCORE_URLS
See the .NET Core 1.1 Getting Started Guide for more details
Two image templates are available:
- A sample app, redhat-developer/s2i-dotnetcore-ex, is now the primary sample application. It provides a more exciting example than the simple "Hello World" app we used previously.
- Many specific product changes were made in the .NET Core 1.1 release. You can look at the full set of .NET Core 1.1 commits to learn more.
Chapter 4. APIs 复制链接链接已复制到粘贴板!
There were 1,380 APIs added in the .NET Core 1.0 release to enable specific scenarios; there was no specific theme to the API additions. You can see the complete set of changes in the API between .NET Core 1.0 and .NET Core 1.1.
The .NET Core 1.0 release does not contain the new CLI tooling (Preview 3). .NET Core 1.1 uses project.json (xproj) files rather than .csproj files.
.NET Core 1.1 is compatible with .NET Standard 1.6.0.
.NET Core 1.1 is available for Red Hat Enterprise Linux 7 x86_64 Server, Workstation, and HPC Compute Node. .NET Core 1.1 is also available for Red Hat Enterprise Atomic Host and OpenShift Platform.
The .NET Core platform comprises runtime, library, and compiler components. As a developer, you have the flexibility to use the components in numerous configurations for device and cloud workloads.
The .NET Core platform provides:
- automatic memory management
- type safety
- delegates and lambdas
- generic types
- Language Integrated Query (LINQ)
- asynchronous programming
- native interoperability
C# is one of the prominent languages in the .NET Core platform. The platform also includes VB and F# to support such modern language features as generics, LINQ, and async support, to name a few.
Chapter 6. Customer Privacy 复制链接链接已复制到粘贴板!
Various Microsoft products have a feature that reports usage statistics, analytics, and various other metrics to Microsoft over the network. Microsoft calls this Telemetry. Red Hat is disabling telemetry because we do not recommend sending customer data to anyone without explicit permission.
As part of the scl enable command, we automatically set an environment variable that tells the CLI to disable its telemetry reporting. Any customer that uses scl enable to run .NET Core will not report telemetry information to Microsoft. This helps keep customer information confidential. Customers are free to override the environment variable after using scl enable to report telemetry, if they wish.
Customers can enable telemetry by unsetting the environment variable DOTNET_CLI_TELEMETRY_OPTOUT. See .NET Core Tools Telemetry for more information.
Chapter 7. Support 复制链接链接已复制到粘贴板!
7.1. Support Overview 复制链接链接已复制到粘贴板!
Red Hat and Microsoft are committed to providing excellent support for .NET Core and are working together to resolve any problems that come up from either side. At a high level, Red Hat supports the installation, configuration, and running of the .NET Core component in Red Hat OpenShift Container Platform and Red Hat Enterprise Linux. If it’s a runtime issue, we’re responsible for getting the customer an answer. Red Hat can also provide "commercially reasonable" support for issues we can help with, for instance, NuGet access problems, permissions issues, firewalls, and application questions that we might know the answer to. If it’s a defect or vulnerability in .NET Core, we let Microsoft know about it.
.NET Core 1.1 is supported on Red Hat Enterprise Linux 7 and OpenShift Container Platform versions 3.3 and later.
7.2. Length of Support 复制链接链接已复制到粘贴板!
Developers can use either the Long Term Support (LTS) releases or Current releases. LTS releases are normally major releases (for example, 1.0) and only receive critical fixes. Current releases are minor releases (for example, 1.1.x) and receive the same fixes. They will also be revised when compatible innovations and features are available.
LTS releases are supported for 3 years after the general availability date or 1 year after the general availability of a subsequent LTS release.
According to Microsoft, Current releases are supported within the same 3-year window as the parent LTS release. They are supported for 3 months after the general availability of a subsequent Current release and 1 year after the general availability of a subsequent LTS release. See Microsoft’s .NET Core Support Lifecycle Fact Sheet for more details.
7.3. Who Do I Contact? 复制链接链接已复制到粘贴板!
There are a couple of ways you can get support, depending on how you are using .NET Core.
- If you are using .NET Core on-premises, you can contact either Red Hat Support or Microsoft directly.
- If you using .NET Core in Microsoft Azure, you can contact either Red Hat Support or Azure Support to receive Integrated Support.
Integrated Support is a collaborative support agreement between Red Hat and Microsoft. Customers using Red Hat products in Microsoft Azure are mutual customers, so both companies are united to provide the best troubleshooting and support experience possible.
7.4. Frequently Asked Questions 复制链接链接已复制到粘贴板!
Here are four of the most common support questions for Integrated Support.
When do I access Integrated Support?
You can engage Red Hat Support directly. If the Red Hat Support Engineer assigned to your case needs assistance from Microsoft, the Red Hat Support Engineer will collaborate with Microsoft directly without any action required from you. Likewise on the Microsoft side, they have a process for directly collaborating with Red Hat Support Engineers.
What happens after I file a support case?
Once the Red Hat support case has been created, a Red Hat Support Engineer will be assigned to the case and begin collaborating on the issue with you and your Microsoft Support Engineer. You should expect a response to the issue based on Red Hat’s Production Support Service Level Agreement.
What if I need further assistance?
Contact Red Hat Support for assistance in creating your case or with any questions related to this process. You can view any of your open cases here.
How do I engage Microsoft for support for an Azure platform issue?
If you have support from Microsoft, you can open a case using whatever process you typically would follow. If you don’t have support with Microsoft, you can always get support from Microsoft here.
7.5. More Support Resources 复制链接链接已复制到粘贴板!
The Resources page at Red Hat Developers provides a wealth of information, including:
- Getting started documents
- Knowledgebase articles and solutions
- Blog posts
The .NET Runtime for Red Hat Enterprise Linux Forum is a great place to interact with other .NET Core developers.
You can also see more support policy information at Red Hat and Microsoft Azure Certified Cloud & Service Provider Support Policies.
Chapter 8. Known Issues 复制链接链接已复制到粘贴板!
The known issues for running .NET Core on Red Hat Enterprise Linux include:
- Use Red Hat Enterprise Linux 7 to run .NET Core; it will not run on earlier versions of Red Hat Enterprise Linux.
If you encounter problems with publishing self-contained applications on Red Hat Enterprise Linux 7 for other platforms where the errors clearly talk about libuv, use this workaround.
rm -rf ~/.nuget/packages/Libuv
rm -rf ~/.nuget/packages/LibuvCopy to Clipboard Copied! Toggle word wrap Toggle overflow This will delete the Red Hat-built libuv nuget package and let dotnet download (on the next run) the Microsoft-built libuv package that includes libuv built for all the platforms supported by .NET Core.
There are several known issues that occur when multiple users try to use NuGet in .NET Core.
- dotnet restore: temporary directory is expected to be user specific #1748
- Dotnet restore uses global temporary directory #2806
Dotnet restore uses global temporary directory #2793
NuGet uses a global temporary directory that makes it impossible for two users to use NuGet simultaneously. Multiple users trying to use NuGet one at a time will need to remove /tmp/NuGetScratch or change permissions so they own this directory when using NuGet.
- Math libraries that are part of .NET Core 1.1 can return different values on different platforms. This is expected behavior. .NET Core 1.1 takes advantage of the platform specific libraries to improve performance and reduce overhead. See the issue discussion for more information.
The .NET Core 1.1 software collection (rh-dotnetcore11) ships with the project.json build system (1.0.0-preview2 SDK). Visual Studio 2017 does not support the project.json build system. Support for the msbuild/csproj build system will be added in the .NET Core 2.0 release.
- Use the installer to install the 1.0.0-preview2 SDK on a Microsoft Windows platform.
To install the 1.0.0-preview2 SDK on non-RHEL Linux:
- follow these instructions to install .NET Core on your system.
add the 1.0.0-preview2 SDK.
cd /tmp wget https://raw.githubusercontent.com/dotnet/cli/rel/1.0.0/scripts/obtain/dotnet-install.sh chmod +x ./dotnet-install.sh ./dotnet-install.sh -v 1.0.0-preview2-1-003177 -i /tmp/dotnet sudo cp -r /tmp/dotnet/sdk/* /opt/dotnet/sdk/
cd /tmp wget https://raw.githubusercontent.com/dotnet/cli/rel/1.0.0/scripts/obtain/dotnet-install.sh chmod +x ./dotnet-install.sh ./dotnet-install.sh -v 1.0.0-preview2-1-003177 -i /tmp/dotnet sudo cp -r /tmp/dotnet/sdk/* /opt/dotnet/sdk/Copy to Clipboard Copied! Toggle word wrap Toggle overflow The
dotnetcommand defaults to using the latest SDK on the system. To explicitly make it use the 1.0.0-preview2 SDK, add a global.json file in your project root.{ "sdk": { "version": "1.0.0-preview2-1-003177" } }{ "sdk": { "version": "1.0.0-preview2-1-003177" } }Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Appendix A. Revision History 复制链接链接已复制到粘贴板!
| Date | Version | Author | Changes |
|---|---|---|---|
| 06/24/2016 | 1.0 | Les Williams | Original version |
| 09/23/2016 | 1.0 | Les Williams | Revised the link for Common Language Runtime (CLR) and added a link for Common Language Infrastructure (CLI) |
| 11/29/2016 | 1.1 | Les Williams | First minor release |
| 12/09/2016 | 1.1 | Les Williams | Revised support information |
| 03/20/2017 | 1.1.1 | Les Williams | Revised to include environment variables |
| 04/04/2017 | 1.1.1 | Les Williams | Revised to include container templates |
| 04/26/2017 | 1.1.1 | Les Williams | Revised to include build system support information |
| 05/16/2017 | 1.1.2 | Les Williams | Revised to include three new environment variables |