对于数据库的操作,必须有SQL SERVER软件,首先我们新建一个WPF工程。
第一步:新建一个数据库
第二步:新建一个表,并且设置ID为主键
第三步:在WPF程序中新建添加实体数据模型
第三步:对数据库进行操作
界面代码
<Window x:Class="EF数据库.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:EF数据库" mc:Ignorable="d" Title="MainWindow" Height="450" Width="800"> <Grid x:Name="Btn"> <Label Content="id:" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top"/> <TextBox x:Name="tbxid" HorizontalAlignment="Left" Height="23" Margin="39,10,0,0" TextWrapping="Wrap" Text="1" VerticalAlignment="Top" Width="120"/> <Label Content="name:" HorizontalAlignment="Left" Margin="175,7,0,0" VerticalAlignment="Top"/> <TextBox x:Name="tbxname" HorizontalAlignment="Left" Height="23" Margin="220,7,0,0" TextWrapping="Wrap" Text="1" VerticalAlignment="Top" Width="120"/> <Label Content="number:" HorizontalAlignment="Left" Margin="363,8,0,0" VerticalAlignment="Top"/> <TextBox x:Name="tbxnumber" HorizontalAlignment="Left" Height="23" Margin="430,9,0,0" TextWrapping="Wrap" Text="1" VerticalAlignment="Top" Width="120"/> <Label Content="time:" HorizontalAlignment="Left" Margin="580,6,0,0" VerticalAlignment="Top"/> <TextBox x:Name="tbxtime" HorizontalAlignment="Left" Height="23" Margin="630,7,0,0" TextWrapping="Wrap" Text="1" VerticalAlignment="Top" Width="120"/> <Button x:Name="BtnAdd" Content="增加" HorizontalAlignment="Left" Margin="84,60,0,0" VerticalAlignment="Top" Width="75" Click="BtnAdd_Click"/> <Button x:Name="BtnDel" Content="删除" HorizontalAlignment="Left" Margin="265,60,0,0" VerticalAlignment="Top" Width="75" Click="BtnDel_Click"/> <Button x:Name="BtnMod" Content="修改" HorizontalAlignment="Left" Margin="430,60,0,0" VerticalAlignment="Top" Width="75" Click="BtnMod_Click"/> <Button x:Name="BtnLook" Content="查看" HorizontalAlignment="Left" Margin="630,60,0,0" VerticalAlignment="Top" Width="75" Click="BtnLook_Click"/> <DataGrid x:Name="datagrid" HorizontalAlignment="Left" Height="229" Margin="10,107,0,0" VerticalAlignment="Top" Width="740"/> </Grid> </Window>
后台代码
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; namespace EF数据库 { /// <summary> /// MainWindow.xaml 的交互逻辑 /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); tbxtime.Text = DateTime.Now.ToString(); } mydataEntities mydata = new mydataEntities(); private void BtnLook_Click(object sender, RoutedEventArgs e) { showdata(); } private void showdata() { datagrid.ItemsSource = mydata.mytable.ToList(); //Linq语句 //var u = from x in mydata.mytable // select x; //datagrid.ItemsSource = u.ToList(); } //添加 private void BtnAdd_Click(object sender, RoutedEventArgs e) { mytable tb = new mytable(tbxid.Text, tbxname.Text, tbxnumber.Text,tbxtime.Text); mydata.mytable.Add(tb); mydata.SaveChanges(); //添加后展示 showdata(); MessageBox.Show("添加成功"); } private void BtnDel_Click(object sender, RoutedEventArgs e) { mytable tb = mydata.mytable.Where(x => x.name == tbxname.Text).FirstOrDefault<mytable>(); mydata.mytable.Remove(tb); mydata.SaveChanges(); showdata(); MessageBox.Show("删除成功"); } private void BtnMod_Click(object sender, RoutedEventArgs e) { //查找到要更改的数据 mytable tb = mydata.mytable.Where(x => x.name == tbxname.Text).FirstOrDefault<mytable>(); tb.name = tbxname.Text; tb.number = tbxnumber.Text; showdata(); MessageBox.Show("修改成功"); }