Skip to content

Releases: dotnet/aspnetcore

1.0.3

13 Dec 17:37
Compare
Choose a tag to compare

ASP.NET Core December 2016 Update - 1.0.3 Release Notes

We are pleased to announce the December 2016 updates for ASP.NET Core!

You can find details on the issues fixed in this release for the following components on their corresponding release pages:

Breaking Changes

There are no breaking changes in this release

Known Issues

There are no known issues with this release.

1.1.0

16 Nov 16:35
Compare
Choose a tag to compare

ASP.NET Core 1.1.0 Release Notes

We are pleased to announce the release of ASP.NET Core 1.1.0!

You can find details on the new features and bug fixes in 1.1.0 for the following components on their corresponding release pages:

The 1.1.0 release also includes the items listed for the 1.1.0-preview1 release.

Breaking Changes

  • For a list of the breaking changes for this release please refer to the issues in the Announcements repo.

Known Issues

There are no known issues with this release

1.1.0-preview1

25 Oct 15:52
Compare
Choose a tag to compare
1.1.0-preview1 Pre-release
Pre-release

ASP.NET Core 1.1.0-preview1 Release Notes

We are pleased to announce the release of ASP.NET Core 1.1 Preview 1!

You can find details on the new features and bug fixes in 1.1. Preview 1 for the following components on their corresponding release pages:

Breaking Changes

  • For a list of the breaking changes for this release please refer to the issues in the Announcements repo.

Known Issues

1.0.1

13 Sep 17:52
Compare
Choose a tag to compare

ASP.NET Core September 2016 Update - 1.0.1 Release Notes

We are pleased to announce the September 2016 updates for ASP.NET Core!

You can find details on the issues fixed in this release for the following components on their corresponding release pages:

Security Advisory

Breaking Changes

  • There are no breaking changes in this release

Known Issues

  • There are no known issues in this release

1.0.0

27 Jun 15:13
Compare
Choose a tag to compare

ASP.NET Core 1.0.0 Release Notes

We are pleased to announce the release of ASP.NET Core 1.0.0!

You can find details on the new features and bug fixes in 1.0.0 for the following components on their corresponding release pages:

We have also released Preview 2 of the ASP.NET Core Tooling for Visual Studio and the following SDK tools:

Azure App Service is ready to support ASP.NET Core 1.0 apps. More information for running ASP.NET Core apps on Azure App Service is available at https://blogs.msdn.microsoft.com/appserviceteam/2016/06/27/azure-app-service-and-asp-net-core. If you don’t have an Azure account you can still try an ASP.NET Core 1.0 sample on Azure App Service free of charge and commitment with the trial offer at https://tryappservice.azure.com/?appservice=web.

Breaking Changes

  • For a list of the breaking changes for this release please refer to the issues in the Announcements repo.

Known Issues

  • EF Core: Some queries significantly slower when executed async

    Some queries, especially those with a number of includes, show a significant slow down when executed asynchronously. The workaround is to execute them synchronously (i.e. replace ToListAsync() etc. with ToList() etc.).

    For more details, see dotnet/efcore#5816

  • EF Core: Pre-RTM migrations need maxLength added to string columns

    In RC2, the column definition in a migration looked like table.Column<string>(nullable: true) and the length of the column was looked up in some metadata we store in the code behind the migration. In RTM, the length is now included in the scaffolded code table.Column<string>(maxLength: 450, nullable: true).

    Any existing migrations that were scaffolded prior to using RTM will not have the maxLength argument specified. This means that in some cases the maximum length supported by the database will be used (nvarchar(max) on SQL Server).

    Option 1: Re-Scaffold Migrations

    The easiest option is to have EF re-scaffold migrations in the correct format.

    1. Delete the Migrations folder from your project (including the model snapshot and all the migrations it contains). If you have customized the scaffolded migrations, be sure to save that code elsewhere before deleting the files.

    2. Scaffold a new migration (Add-Migration InitialSchema in Visual Studio, dotnet ef migrations add InitialSchema from cmd line). You can call the migration whatever you want, InitialSchema is just a suggestion.

      This migration represents the same operations that were previously handled by the migrations you deleted in Step 1. The difference is that the code is in the format expected by RTM.

    3. For any existing databases, where the migrations deleted in Step 1 were already applied, add a row to the __EFMigrationsHistory table to indicate that the operations in the new migration have already been applied.

      You will need to update the following script to specify the full name of the migration that was generated. You can copy this from the filename of the scaffolded migration - it will be something like 20160630191522_InitialSchema.

      INSERT INTO [dbo].[__EFMigrationsHistory] ([MigrationId], [ProductVersion])
      VALUES ('<migration name with timestamp>', '1.0.0-rtm-21431');
      
    4. Optionally, you can delete the rows from __EFMigrationsHistory that represent the migrations that were removed in Step 1. This isn't required though, as EF will just ignore excess rows in this table.

    Option 2: Manually Edit Existing Migrations

    Another option is to manually edit existing migrations to include the maxLength specification. By convention, 450 is the maximum length used for keys, foreign keys, and indexed columns. If you have explicitly configured a length in the model, then you should use that length instead.

    ASP.NET Identity

    This change impacts projects that use ASP.NET Identity and were created from a pre-RTM project template. The project template includes a migration used to create the database.

    We would recommend using Option 1 above to recreate this migration. If you chose to manually edit the migration instead, you need to specify a maximum length of 256 for the following columns.

    • AspNetRoles
      • Name
      • NormalizedName
    • AspNetUsers
      • Email
      • NormalizedEmail
      • NormalizedUserName
      • UserName

    Failure to make this change will result in the following exception when the initial migration is applied to a database.

    System.Data.SqlClient.SqlException (0x80131904): Column 'NormalizedName' in table 'AspNetRoles' is of a type that is invalid for use as a key column in an index.

  • EF Core: Commands on UWP projects require manually adding binding redirects

    Attempting to run EF commands on Universal Windows Platform (UWP) projects results in the following error:

    System.IO.FileLoadException: Could not load file or assembly 'System.IO.FileSystem.Primitives, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference.

    Workaround

    Manually add binding redirects to the UWP project. Create a file named "App.config" in the project root folder and add redirects to the correct assembly versions.

    <configuration>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="System.IO.FileSystem.Primitives"
                              publicKeyToken="b03f5f7f11d50a3a"
                              culture="neutral" />
            <bindingRedirect oldVersion="4.0.0.0"
                             newVersion="4.0.1.0"/>
          </dependentAssembly>
          <dependentAssembly>
            <assemblyIdentity name="System.Threading.Overlapped"
                              publicKeyToken="b03f5f7f11d50a3a"
                              culture="neutral" />
            <bindingRedirect oldVersion="4.0.0.0"
                             newVersion="4.0.1.0"/>
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    </configuration>

    For more details, see dotnet/efcore#5471

RC2

16 May 17:39
Compare
Choose a tag to compare
RC2 Pre-release
Pre-release

ASP.NET Core RC2 Release Notes

We are pleased to announce the release of ASP.NET Core RC2!

Get started with ASP.NET Core RC2

You can find details on the new features and bug fixes in RC2 for the following components on their corresponding release pages:

Breaking Changes

  • For a list of the breaking changes for this release please refer to the issues in the Announcements repo.

Known Issues

  • Tooling known issues Please see the Known Issues list in the Tooling repo

  • EF Core: Error Installing into .NET Core Class Library

    Attempting to install/restore EF Core into a .NET Core class library results in the following errors.

    The dependency Remotion.Linq 2.0.2 does not support framework .NETStandard,Version=v1.5.

    and/or

    The dependency Ix-Async 1.2.5 does not support framework .NETStandard,Version=v1.5.

    Workaround

    You can workaround this issue by updating the frameworks section of project.json to include portable-net452+win81 in the imports section.

      "frameworks": {
        "netstandard1.5": {
          "imports": [
            "dnxcore50",
            "portable-net452+win81"
          ]
        }
      }
    

    For more details, see dotnet/efcore#5176.

  • EF Core: Performance Issue Adding a Large Number of Entities

    In RC2 the time taken to add large number of entities to the context is non-linear. The slow down becomes impactful around 2000-5000 entities depending on the complexity of the model.

    Workaround

    To work around this issue, you can break the entities up into a series of batches and add each batch using a fresh context instance.

    For more details, see dotnet/efcore#4831

  • EF Core: Scaffold-DbContext requires additional quoting in .NET Core/ASP.NET Core projects

    When using the Scaffold-DbContext command in Package Manager Console for ASP.NET Core projects, you may encounter an error similar to the following.

    The term 'localdb' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

    Workaround

    The workaround is to double quote the connection string by adding single quotes inside the double quotes.

    PM> Scaffold-DbContext "'<connection string>'" <database provider>
    

    For more details, see dotnet/efcore#5376.

  • EF Core: LINQ Provider Limitations

    LINQ providers take time to build, and EF Core is no exception. The LINQ provider in RC2 is greatly improved over RC1, both in terms of performance and the queries it can successfully execute. There are still a number of queries that will either fail, or be partially evaluated in memory. We will continue to fix bugs, and increase the number of queries that can be evaluated thru RTM, though the LINQ provider will not be complete at this stage and improvements will continue for some time to come.

  • EF Core: Model Building Performance Regression

    RC2 contains a performance regression that causes model building to be ~2x slower than it was in RC1. For most applications, this slow down will not be noticeable. This issue is fixed in our current code base and performance will be faster than RC1 in the next release.

  • HTTPS requests appear as HTTP in Azure Web Sites

    Symptoms:

    • HTTPS requests have HttpContext.Reqeuest.Scheme set to "http"
    • Generated redirects and links use "http://" instead of "https://"
    • OpenIdConnect and OAuth authentication will fail because the generated redirect url does not match the pre-registered address
    • [RequireHttps] causes infinite redirects

    Background:
    When AspNetCoreModule forwards requests to the application it does so over HTTP and adds X-Forwarded-For and X-Forwarded-Proto headers to preserve the original remote IP and scheme. In Azure Web Sites there is a duplicate X-Forwarded-For value. The duplicate value is a problem because the middleware that reads the forwarded headers requires the same number of entries in X-Forwarded-For and X-Forwarded-Proto for security reasons.

    Workaround:
    Add the following in Startup.ConfgiureServices

                services.Configure<ForwardedHeadersOptions>(options =>
                {
                  options.ForwardedHeaders = ForwardedHeaders.XForwardedProto
                });
    

    This ignores the X-Forwarded-For header and allows X-Forwarded-Proto to be applied correctly.

    RE: aspnet/IISIntegration#140 (comment)

  • EF Core: Package Manager Console Commands Require PowerShell 5

    EF Core commands from Package Manager Console may fail with one of the following errors:

    The expression after '&' in a pipeline element produced an object that was not valid. It must result in a command name, a script block, or a CommandInfo object.

    or

    Where-Object : Cannot bind parameter 'FilterScript'. Cannot convert the "Name" value of type "System.String"

    or

    Join-Path : Cannot bind argument to parameter 'Path' because it is null.

    Workaround

    To work around this issue upgrade to PowerShell 5.0 - https://www.microsoft.com/en-us/download/details.aspx?id=50395.

    For more details, see dotnet/efcore#5327

  • EF Core: Installing tools in a UWP class library causes the Windows App Cert Kit to fail

    If the UWP class library contains a reference to EF Core tools ("Microsoft.EntityFrameworkCore.Tools"), the Windows App Cert Kit will fail the AppContainerCheck test on any UWP apps that depend on this UWP class library.

    Workarounds:

    • Remove Microsoft.EntityFrameworkCore.Tools before deploying the UWP app.
    • Add Microsoft.EntityFrameworkCore.Tools to the UWP application project instead of the class library project.

    See dotnet/efcore#5069

  • Need to update log location when deploying to an Azure App Service web app

    Workaround:

    Update web.config to remove the log location and it will get updated correctly when published.

RC1

18 Nov 15:31
Compare
Choose a tag to compare
RC1 Pre-release
Pre-release

ASP.NET 5 RC1 Release Notes

We are pleased to announce the release of ASP.NET 5 RC1!

Please refer to our documentation for instructions on installing ASP.NET 5 beta8 for Windows, Mac, and Linux

You can find details on the new features and bug fixes in rc1 for the following components on their corresponding release pages:

To find out what's new in .NET Core in this release please refer to the .NET Core RC release notes.

Breaking Changes

  • For a list of the breaking changes for this release please refer to the issues in the Announcements repo.

Known Issues

  • Tooling known issues Please see the Known Issues list in the Tooling repo
  • No .NET Core on CentOS This release does not support running on .NET Core on CentOS or derivatives. The issues with running on CentOS will be addressed in a future release.
  • Unable to build for full .NET Framework using the .NET Core based DNX on OS X and Linux You cannot build DNX projects that target the full .NET Framework (ex dnx451, dnx46) using the .NET Core based DNX on OS X and Linux. To work around this issue remove the corresponding targets from the frameworks section in project.json.
  • Applications hosted behind IIS uses in memory keys for data protection When hosted a website behind IIS the Data Protection stack does not find a suitable place to store the keyring, and uses in memory keys. This means that when your application restarts all forms authentication tokens will be invalid and users will have to login again. In addition any data you protected will no longer be able to be unprotected. Please see aspnet/Announcements#110 for options for dealing with this issue.
  • On OS X and Linux keys are stored unencrypted under the user profile path You should ensure permissions for the ~/.aspnet/DataProtection-Keys directory are limited to the user account your application runs as. See aspnet/Announcements#111 for more details.

beta8

15 Oct 17:29
Compare
Choose a tag to compare
beta8 Pre-release
Pre-release

ASP.NET 5 Beta8 Release Notes

We are pleased to announce the release of ASP.NET 5 beta8!

Please refer to our documentation for instructions on installing ASP.NET 5 beta8 for Windows, Mac, and Linux

Documentation and samples for ASP.NET 5 can be found at http://docs.asp.net.
You can find details on the new features and bug fixes in beta8 for the following components on their corresponding release pages:

Breaking Changes

  • For a list of the breaking changes for this release please refer to the issues in the Announcements repo.

Known Issues

  • Tooling known issues Please see the Known Issues list in the Tooling repo
  • No .NET Core on CentOS This release does not support running on .NET Core on CentOS or derivatives. The issues with running on CentOS will be addressed in a future release.
  • Unable to build for full .NET Framework using the .NET Core based DNX on OS X and Linux You cannot build DNX projects that target the full .NET Framework (ex dnx451, dnx46) using the .NET Core based DNX on OS X and Linux. To work around this issue remove the corresponding targets from the frameworks section in project.json.

beta7

02 Sep 22:23
Compare
Choose a tag to compare
beta7 Pre-release
Pre-release

ASP.NET 5 Beta7 Release Notes

We are pleased to announce the release of ASP.NET 5 beta7! ASP.NET 5 beta7 ships publicly as NuGet packages on https://nuget.org and includes a tooling update for Visual Studio 2015 RTM.

To use ASP.NET 5 beta7 with Visual Studio 2015, you will need to download and install the beta7 version (14.0.60831.0) of ASP.NET and Web Tools 2015.

You can also try out ASP.NET 5 with Visual Studio Code on Windows, Mac and Linux!

You can find documentation and samples for ASP.NET 5 at http://docs.asp.net.

You can find details on the new features and bug fixes in beta7 for the following components on their corresponding release pages:

Breaking Changes

  • For a list of the breaking changes for this release please refer to the issues in the Announcements repo.

Known Issues

  • Tooling known issues Please see the Known Issues list in the Tooling repo
  • Limitations of .NET Core on OS X and Linux Support for .NET Core on OS X and Linux is still in early preview. Known limitations include:
    • Cryptography: Some of the System.Security.Cryptography.X509Certificates library is not yet implemented.
    • Networking: Most of the networking libraries are not yet available. System.Net.Primitives and System.Net.NameResolution are only partially functional and System.Net.Http works only for common success scenarios.
    • I/O: Paths up to the system-supported max path length are allowed, except for a few situations related to loading applications, assemblies, and resources.
    • Globalization: Culture is assumed to be invariant and string operations related to sorting and searching assume ASCII.
    • Data: SqlClient is not currently functional.
  • Unable to build for full .NET Framework using the .NET Core based DNX on OS X and Linux You cannot build DNX projects that target the full .NET Framework (ex dnx451, dnx46) using the .NET Core based DNX on OS X and Linux. To work around this issue remove the corresponding targets from the frameworks section in project.json.
  • "Unable to load DLL 'api-ms-win-core-libraryloader-l1-1-0'" error when using the EF7 provider for SQLite on .NET Core on OS X and Linux This is a known issue that will be addressed in a future release.

beta6

28 Jul 19:58
Compare
Choose a tag to compare
beta6 Pre-release
Pre-release

ASP.NET 5 Beta6 Release Notes

We are please to announce the release of ASP.NET 5 beta6! ASP.NET 5 beta6 ships publicly as NuGet packages on https://nuget.org and includes a tooling update for Visual Studio 2015 RTM.

Also try out ASP.NET 5 with Visual Studio Code on Windows, Mac and Linux!

You can find documentation and samples for ASP.NET 5 at http://docs.asp.net.

You can find details on the new features and bug fixes in beta6 for the following components on their corresponding release pages:

Breaking Changes

  • For a list of the breaking changes for this release please refer to the issues in the Announcements repo.

Known Issues

  • Tooling known issues Please see the Known Issues list in the Tooling repo
  • "The current runtime target framework is not compatible" error when running on IIS or IIS Express To target dnx46 or dnx452 when running on IIS or IIS Express set the DNX_IIS_RUNTIME_FRAMEWORK environment variable to the target framework that you want to use (dnx46 or dnx452). You can do this from within Visual Studio in the Project Properties page for the web application, on the Debug tab. Just choose the IIS Express profile and add the environment variable.