1、添加Nuget包:EntityFramework
2、在App.config文件添加链接Sqlserver字符串
<connectionStrings> <add name="MyStrConn" connectionString="server=Localhost;uid=sa;pwd=123456;database=WareHouseDemo;" providerName="System.Data.SqlClient"/> </connectionStrings>
3、添加模型类
新建LocationInfo类并写入下面代码
[Table("LocationInfo")] class LocationInfo { [Key] public int LocationId { get; set; }//库位号 public string Type { get; set; }//种类 public int Number { get; set; }//数量 public string Material { get; set; }//材质 public string RFIDNumber { get; set; }//料盘的RFID号 //定义无参数的构造函数主要是因为在通过DbSet获取对象进行linq查询时会报错 //The class 'EFCodeFirstModels.Student' has no parameterless constructor. public LocationInfo() { } public LocationInfo(int locationId, string type, int number, string material, string rfidNumber) { this.LocationId = locationId; this.Type = type; this.Number = number; this.Material = material; this.RFIDNumber = rfidNumber; } }
4、添加数据库上下文
新建EFCodeFirstDbContext类并写入下面代码
class EFCodeFirstDbContext : DbContext { public EFCodeFirstDbContext() : base("name=MyStrConn") { } protected override void OnModelCreating(DbModelBuilder modelBuilder) { } public DbSet<LocationInfo> LocationInfos { get; set; } }
5、进行增删改查操作
在Program类中写入下面代码
class Program { static void Main(string[] args) { //using能及时释放资源,例如数据库连接异常,可以即使将上下文释放 using (var db = new EFCodeFirstDbContext()) { //增------------------------------------------------------------------------------ LocationInfo locationInfo1 = new LocationInfo(1, "empty", 0, "empty", "00010000"); LocationInfo locationInfo2 = new LocationInfo(2, "empty", 0, "empty", "00020000"); LocationInfo locationInfo3 = new LocationInfo(3, "empty", 0, "empty", "00030000"); LocationInfo locationInfo4 = new LocationInfo(4, "empty", 0, "empty", "00040000"); LocationInfo locationInfo5 = new LocationInfo(5, "empty", 0, "empty", "00050000"); LocationInfo locationInfo6 = new LocationInfo(6, "empty", 0, "empty", "00060000"); LocationInfo locationInfo7 = new LocationInfo(7, "empty", 0, "empty", "00070000"); LocationInfo locationInfo8 = new LocationInfo(8, "empty", 0, "empty", "00080000"); LocationInfo locationInfo9 = new LocationInfo(9, "empty", 0, "empty", "00090000"); LocationInfo locationInfo10 = new LocationInfo(10, "empty", 0, "empty", "000A0000"); db.LocationInfos.Add(locationInfo1); db.LocationInfos.Add(locationInfo2); db.LocationInfos.Add(locationInfo3); db.LocationInfos.Add(locationInfo4); db.LocationInfos.Add(locationInfo5); db.LocationInfos.Add(locationInfo6); db.LocationInfos.Add(locationInfo7); db.LocationInfos.Add(locationInfo8); db.LocationInfos.Add(locationInfo9); db.LocationInfos.Add(locationInfo10); db.SaveChanges(); //查------------------------------------------------------------------------------ //StringBuilder stringBuilder = new StringBuilder(); //foreach (var item in db.LocationInfos) //{ // stringBuilder.AppendFormat( // "库位号:{0} 物料类型:{1} 物料数量:{2} 物料材质:{3} RFID号:{4} ", // item.LocationId, item.Type, item.Number, item.Material, item.RFIDNumber); //} //Console.WriteLine(stringBuilder); //查某条数据(1) /* var query = from q in db.LocationInfos where q.LocationId == 5 select q; StringBuilder stringBuilder = new StringBuilder(); foreach (var item in query) { stringBuilder.AppendFormat( "库位号:{0} 物料类型:{1} 物料数量:{2} 物料材质:{3} RFID号:{4} ", item.LocationId, item.Type, item.Number, item.Material, item.RFIDNumber); } Console.WriteLine(stringBuilder); */ //查某条数据(2) /* var query = db.LocationInfos.Where<LocationInfo>(c => c.LocationId == 5); StringBuilder stringBuilder = new StringBuilder(); foreach (var item in query) { stringBuilder.AppendFormat( "库位号:{0} 物料类型:{1} 物料数量:{2} 物料材质:{3} RFID号:{4} ", item.LocationId, item.Type, item.Number, item.Material, item.RFIDNumber); } Console.WriteLine(stringBuilder); */ //改------------------------------------------------------------------------------ /* LocationInfo locationInfo = new LocationInfo() { LocationId = 5 }; locationInfo = db.LocationInfos.Attach(locationInfo); locationInfo.Type = "bottle"; locationInfo.Number = 4; locationInfo.Material = "Sn"; locationInfo.RFIDNumber = "00050101"; db.SaveChanges(); */ //删------------------------------------------------------------------------------ /* LocationInfo locationInfo = db.LocationInfos.Where(p => p.LocationId == 9).FirstOrDefault(); db.LocationInfos.Remove(locationInfo); db.SaveChanges(); */ } Console.ReadKey(); } }
源代码:
链接:https://pan.baidu.com/s/1zj9lvwgVxmgh2mbskCZdZA
提取码:kszh
后续会陆续更新其他资料,喜欢请关注哦!