WPF做上位机使用Entity Framework里面的 Code First 连接SQL Server数据库
时间: 2024-09-25 12:13:43 浏览: 55
物资仓储系统-WPF-SQLSERVER数据库
在Windows Presentation Foundation (WPF)应用程序中,如果你想使用Code First方法连接到SQL Server数据库并操作Entity Framework (EF),你需要按照以下步骤进行:
1. **安装依赖**:
- 首先,确保已经安装了.NET框架和Visual Studio(如果尚未安装)。
- 安装 Entity Framework Core 和相关的ADO.NET库,如`Microsoft.EntityFrameworkCore.SqlServer`。
2. **创建数据模型**:
使用Code First模式,首先创建一个实体类(也称为POCOs,Plain Old CLR Objects),代表数据库中的表结构。例如:
```csharp
public class User
{
public int Id { get; set; }
public string Name { get; set; }
// 其他属性...
}
```
3. **设置上下文**:
创建一个DbContext类,它将包含数据库连接信息,并继承自`DbContext`基础类:
```csharp
public class AppDbContext : DbContext
{
public DbSet<User> Users { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer("your_connection_string_here");
}
}
```
替换`"your_connection_string_here"`为你实际的SQL Server数据库连接字符串。
4. **实体映射**:
EF会自动基于你的数据模型生成数据库迁移,所以在项目开始时,可能需要运行`dotnet ef migrations add Initial`命令创建初始迁移。
5. **迁移数据库**:
跑过一次`dotnet ef database update`命令,应用配置好的数据模型到数据库。
6. **在WPF中使用**:
在WPF中,你可以通过注入`AppDbContext`来操作数据库:
```xaml
<Window x:Class="YourProject.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<Button Content="Load Users" Click="Button_Click"/>
</Grid>
</Window>
```
然后,在对应的C#背后编写业务逻辑,比如按钮点击事件处理:
```csharp
private void Button_Click(object sender, RoutedEventArgs e)
{
using (var context = new AppDbContext())
{
var users = context.Users.ToList();
// 对用户列表进行操作...
}
}
阅读全文