ASP.NET Core MVC 项目搭建与数据库操作

在本文中,将探讨如何使用ASP.NET CoreMVC框架搭建一个项目,并通过Entity Framework Core进行数据库操作。将从创建一个新的项目开始,然后创建数据库,设置Entity Framework Core,并最终生成MVC的控制器和视图。

创建新项目

首先,需要创建一个新的ASP.NET CoreWeb应用程序。在Visual Studio中,选择“文件”>“新建”>“项目”,然后从左侧菜单中选择“.NET Core”>“ASP.NET Core Web应用程序”。选择ASP.NET Core的示例模板,然后点击“确定”。这将打开解决方案资源管理器中示例模板的初始视图。

创建数据库

接下来,需要创建一个新的数据库。使用SQL Server Management Studio (SSMS) 创建一个名为“PhoneBook”的数据库,并运行以下查询:

USE [PhoneBook] GO CREATE TABLE [dbo].[Contacts]( [ContactID] [int] IDENTITY(1,1) NOT NULL, [FirstName] [nvarchar](50) NULL, [LastName] [nvarchar](50) NULL, [Phone] [nvarchar](50) NULL, [Email] [nvarchar](50) NULL, CONSTRAINT [PK_Contacts] PRIMARY KEY CLUSTERED ( [ContactID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO

这个查询创建了一个名为“Contacts”的表,用于存储联系人信息。

设置Entity Framework Core

Entity Framework Core是一个跨平台的数据访问技术。需要在项目.json文件中添加以下依赖包:

"Microsoft.EntityFrameworkCore.SqlServer": "1.0.1", "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final", "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.1"

这些包允许Entity Framework Core与Microsoft SQL Server一起使用。

生成DbContext

将使用命令行生成DbContext。在项目目录中,按住Shift键并右键单击以打开命令窗口。输入以下命令:

dotnet ef dbcontext scaffold "Server=DESKTOP-5B67SHH;Database=PhoneBook;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer --output-dir Models

执行此命令后,将在解决方案资源管理器中生成一个包含Context和Entities的模型文件夹。

生成ASP.NETMVCCore控制器和视图

在.NET Core中,可以使用脚手架工具生成控制器和视图。在项目.json文件中添加以下依赖包:

"Microsoft.VisualStudio.Web.CodeGenerators.Mvc": "1.0.0-preview2-final", "Microsoft.VisualStudio.Web.CodeGeneration.Tools": "1.0.0-preview2-final"

保存文件后,包将自动恢复。现在可以进行下一步,生成控制器和视图。

使用接口生成脚手架

右键单击控制器文件夹,选择“添加”>“新建脚手架项”。选择生成代码的方式,然后提供模型和上下文类,这些类将用于与数据库交互。选择视图选项,然后点击“添加”按钮执行操作。

使用命令行生成脚手架

也可以使用命令行生成控制器和视图。在项目文件夹中,按住Shift键并右键单击,然后命令窗口将出现。输入以下命令获取帮助信息:

dotnet aspnet-codegenerator --help

然后使用以下命令生成控制器和视图:

dotnet aspnet-codegenerator --project "E:\Documents\Article\ScaffoldingCoreMVC\CoreMVCScaffolding\src\CoreMVCScaffolding" controller --force --controllerName ContactsController --model CoreMVCScaffolding.Models.Contacts --dataContext CoreMVCScaffolding.Models.PhoneBookContext --relativeFolderPath Controllers --controllerNamespace CoreMVCScaffolding.Controllers --useDefaultLayout

执行此命令后,控制器和视图将成功生成。

运行应用程序

最后,可以通过Ctrl+F5运行应用程序,或者使用以下命令运行:

dotnet run
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485