如何在Visual Studio的ASP.NET MVC项目中添加SQLite并设为默认?
没问题,我来一步步帮你解决这两个问题:
给现有Visual Studio ASP.NET MVC项目添加SQLite数据库
如果你已经有一个在Visual Studio里创建的MVC项目,想要添加SQLite数据库,按以下步骤操作:
安装SQLite相关NuGet包
右键你的项目 → 选择「管理NuGet程序包」,在浏览页搜索并安装这两个包:Microsoft.EntityFrameworkCore.SqliteMicrosoft.EntityFrameworkCore.Tools(用来执行数据库迁移命令)
或者直接在「包管理器控制台」里跑命令:
Install-Package Microsoft.EntityFrameworkCore.Sqlite Install-Package Microsoft.EntityFrameworkCore.Tools修改连接字符串
打开项目根目录的appsettings.json,找到ConnectionStrings节点,替换成SQLite的连接配置:"ConnectionStrings": { "DefaultConnection": "Data Source=app.db" }配置DbContext使用SQLite
找到项目里的ApplicationDbContext类(或者你自定义的DbContext),修改它的配置:- 如果是.NET 5及更早版本,在
Startup.cs的ConfigureServices方法里更新:services.AddDbContext<ApplicationDbContext>(options => options.UseSqlite(Configuration.GetConnectionString("DefaultConnection"))); - 如果是.NET 6+的项目,在
Program.cs里修改服务注册:builder.Services.AddDbContext<ApplicationDbContext>(options => options.UseSqlite(builder.Configuration.GetConnectionString("DefaultConnection")));
- 如果是.NET 5及更早版本,在
生成并应用数据库迁移
打开「包管理器控制台」,依次执行以下命令:Add-Migration InitialCreate Update-Database执行完成后,你的项目根目录就会生成
app.db文件了。
将SQLite设为Visual Studio创建MVC项目的默认配置
Visual Studio默认的MVC模板并没有直接提供切换SQLite为默认的选项,但可以通过两种方式实现:
方式一:自定义项目模板
- 先通过dotnet CLI创建一个带SQLite的MVC项目作为模板基础:
dotnet new mvc --auth Individual -o MySqliteMvcTemplate - 打开Visual Studio,点击「文件→新建→项目」,然后选择「导入模板」,把刚才创建的
MySqliteMvcTemplate项目导入为自定义模板。之后创建新项目时,选择这个自定义模板就能默认得到带SQLite配置的MVC项目。
- 先通过dotnet CLI创建一个带SQLite的MVC项目作为模板基础:
方式二:修改Visual Studio内置模板(进阶操作)
注意:这个方法需要修改Visual Studio安装目录的文件,建议先备份,而且Visual Studio更新后可能会重置这些修改。- 找到MVC模板的安装目录,路径大概是:
C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\ProjectTemplates\CSharp\Web\1033\MvcWebApplicationProjectTemplate(根据你的VS版本和安装路径调整) - 打开模板里的
appsettings.json,替换ConnectionStrings为SQLite的配置;修改Startup.cs/Program.cs中的DbContext配置为使用SQLite;在模板的.csproj文件里添加Microsoft.EntityFrameworkCore.Sqlite的包引用。 - 保存修改后重启Visual Studio,之后新建MVC项目就会默认使用SQLite了。
- 找到MVC模板的安装目录,路径大概是:
内容的提问来源于stack exchange,提问作者Kaushal Kishore




