Asp.net core使用ORM工具进行数据库迁移
Asp.net core uses ORM tools for database migration
我是asp.net核心的新手,不同的语言可能有自己的数据集迁移框架。在 asp.net 核心中,如何将我的 mysql 字段迁移到我的项目中?以前都是模型class的字段写好映射到数据库。现在,如何将数据库映射到模型 class?我找到了这篇文章,但请告诉我怎么做,请原谅我的问题。
https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/complex-data-model?view=aspnetcore-6.0
我做了一个数据库到模型映射的demo,你可以参考一下
首先,这里是需要的 Nuget 包:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.22" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="3.1.22">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.1.22">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="MySql.Data.EntityFrameworkCore" Version="8.0.22" />
</ItemGroup>
</Project>
然后输入这个命令生成你需要的模型文件
Scaffold-DbContext "mysql connection" MySql.Data.EntityFrameworkCore -OutputDir Models
您需要填写您的数据库连接地址,并选择输出到哪个目录。我这边是Models目录。
正在创建 Connector/NET 连接字符串:
https://dev.mysql.com/doc/connector-net/en/connector-net-connections-string.html
Table 在 mysql:
最终生成的文件:
public partial class User
{
public int Id { get; set; }
public string Name { get; set; }
public string Pwd { get; set; }
}
可以参考这篇文章:
https://dev.mysql.com/doc/connector-net/en/connector-net-entityframework-core-scaffold-example.html
我是asp.net核心的新手,不同的语言可能有自己的数据集迁移框架。在 asp.net 核心中,如何将我的 mysql 字段迁移到我的项目中?以前都是模型class的字段写好映射到数据库。现在,如何将数据库映射到模型 class?我找到了这篇文章,但请告诉我怎么做,请原谅我的问题。
https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/complex-data-model?view=aspnetcore-6.0
我做了一个数据库到模型映射的demo,你可以参考一下
首先,这里是需要的 Nuget 包:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.22" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="3.1.22">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.1.22">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="MySql.Data.EntityFrameworkCore" Version="8.0.22" />
</ItemGroup>
</Project>
然后输入这个命令生成你需要的模型文件
Scaffold-DbContext "mysql connection" MySql.Data.EntityFrameworkCore -OutputDir Models
您需要填写您的数据库连接地址,并选择输出到哪个目录。我这边是Models目录。
正在创建 Connector/NET 连接字符串:
https://dev.mysql.com/doc/connector-net/en/connector-net-connections-string.html
Table 在 mysql:
最终生成的文件:
public partial class User
{
public int Id { get; set; }
public string Name { get; set; }
public string Pwd { get; set; }
}
可以参考这篇文章:
https://dev.mysql.com/doc/connector-net/en/connector-net-entityframework-core-scaffold-example.html