dotnet / AspNetCore.Docs

Documentation for ASP.NET Core
https://docs.microsoft.com/aspnet/core
Creative Commons Attribution 4.0 International
12.63k stars 25.29k forks source link

doc out of date after visual studio 2022 upgrade #31062

Closed AncientTree closed 11 months ago

AncientTree commented 11 months ago

Description

visual studio 2022 的ASP.NET Core MVC 模板中并没有Startup.cs文件,而文档中依然保留了旧的版本,文档已经失去了作用,请及时修改文档以适应visual studio 2022 的更新。

Page URL

https://learn.microsoft.com/zh-cn/aspnet/core/data/ef-mvc/intro?view=aspnetcore-8.0

Content source URL

https://github.com/dotnet/AspNetCore.Docs/blob/main/aspnetcore/data/ef-mvc/intro.md

Document ID

8daf79df-eac4-358b-e6f0-6def45bd54da

Article author

tdykstra

AncientTree commented 11 months ago

Sorry, what I face is occur due to the difference between .NET 5 and .NET 6~8.

本教程没有针对 ASP.NET Core 6 或更高版本进行更新。 如果创建面向 ASP.NET Core 6 或 7 的项目,本教程的说明将不适用。 例如,ASP.NET Core 6 和 7 Web 模板使用最小托管模型,该模型将 Startup.cs 和 Program.cs 统一到一个 Program.cs 文件中。

.NET 6 中引入的另一个区别是 NRT(可为空引用类型)功能。 项目模板默认启用此功能。 如果 EF 认为某个属性在 .NET 6 中是必需的,而在 .NET 5 中可为空,则可能会出现问题。 例如,除非将 Enrollments 属性设置为可为空或将 asp-validation-summary 帮助程序标记从 ModelOnly 更改为 All,否则“创建学生”页面将失败且无提示。

对于本教程,建议安装并使用 .NET 5 SDK。 在更新本教程之前,请参阅 ASP.NET Core 中的 Razor Pages 和 Entity Framework Core - 教程 1(共 8 个),了解如何将 Entity Framework 与 ASP.NET Core 6 或更高版本配合使用。