实现桥梁设计模式到实体框架 [英] Implementing Bridge Design Pattern to Entity Framework
本文介绍了实现桥梁设计模式到实体框架的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好,
我正在做我最后的项目。我必须使用Bridge Design Pattern和Entity Framework,但我不确定如何使用这两个以及如何进行CRUD操作?
我正在实施StudentData类的IDatamanagment接口。
我的代码是这样的:
命名空间 BusinessLayer
{
public class StudentData:IDataManagement< Ogrenci>
{
private 列表< Ogrenci> ogrenci = null ;
public int kimlikno { get ; set ; }
public string ad { get 跨度>; set ; }
public string soyad { get 跨度>; set ; }
public DateTime dogumtarihi { get ; set ; }
public string adres { get 跨度>; set ; }
public void NextStudent()
{
if (kimlikno < = ogrenci.Count - 1 )
{
kimlikno ++;
}
}
public void PriorStudent( )
{
if (kimlikno > 0 )
{
kimlikno--;
}
}
public void AddStudent( Ogrenci t)
{
使用(OgrenciDBEntities db = new OgrenciDBEntities())
{
db.Ogrenci.Add( new Ogrenci {Ad = ad,
Soyad = soyad,
DogumTarihi = Convert.ToDateTime(dogumtarihi),
Adres = adres});
db.SaveChanges();
}
}
public void DeleteStudent( Ogrenci t)
{
if (kimlikno!= 0 )
{
使用(OgrenciDBEntities db = new OgrenciDBEntities())
{
Ogrenci ogr = db.Ogrenci.Where(o = > o.KimlikNumarasi == kimlikno).FirstOrDefault();
db.Ogrenci.Remove(ogr);
db.SaveChanges();
}
}
}
public void ListStudent()
{
使用(OgrenciDBEntities db = new OgrenciDBEntities ())
{
var ogrenci =( from o db.Ogrenci
选择 new
{
kimlikno = o.KimlikNumarasi,
ad = o.Ad,
soyad = o.Soyad,
dogumtarihi = o.DogumTarihi,
adres = o .Adres
}
).ToList();
}
}
public void UpdateStudent( )
{
if (kimlikno!= 0 )
{
使用(OgrenciDBEntities db = new OgrenciDBEntities())
{
Ogrenci ogr = db.Ogrenci.Where(o = > o.KimlikNumarasi == kimlikno).FirstOrDefault();
ogr.Ad = ad;
ogr.KimlikNumarasi = Convert.ToInt16(kimlikno);
ogr.Soyad = soyad;
ogr.DogumTarihi = dogumtarihi;
ogr.Adres = adres;
db.SaveChanges();
}
}
}
}
}
如有任何帮助,我们将不胜感激,提前谢谢
解决方案
您应该使用存储库或工作单元设计模式与实体框架。
Hi everybody,
I'm doing my final project. I have to use Bridge Design Pattern with Entity Framework but I'm not sure how can I use these two and how can I do CRUD operations?
I'm implementing IDatamanagment interface to StudentData class.
My code goes like this:
namespace BusinessLayer
{
public class StudentData:IDataManagement<Ogrenci>
{
private List<Ogrenci> ogrenci = null;
public int kimlikno { get; set; }
public string ad { get; set; }
public string soyad { get; set; }
public DateTime dogumtarihi { get; set; }
public string adres { get; set; }
public void NextStudent()
{
if (kimlikno <= ogrenci.Count - 1)
{
kimlikno++;
}
}
public void PriorStudent()
{
if (kimlikno > 0)
{
kimlikno--;
}
}
public void AddStudent(Ogrenci t)
{
using (OgrenciDBEntities db = new OgrenciDBEntities())
{
db.Ogrenci.Add(new Ogrenci { Ad=ad,
Soyad = soyad,
DogumTarihi = Convert.ToDateTime(dogumtarihi),
Adres = adres });
db.SaveChanges();
}
}
public void DeleteStudent(Ogrenci t)
{
if (kimlikno != 0)
{
using (OgrenciDBEntities db = new OgrenciDBEntities())
{
Ogrenci ogr = db.Ogrenci.Where(o => o.KimlikNumarasi == kimlikno).FirstOrDefault();
db.Ogrenci.Remove(ogr);
db.SaveChanges();
}
}
}
public void ListStudent()
{
using (OgrenciDBEntities db = new OgrenciDBEntities())
{
var ogrenci = (from o in db.Ogrenci
select new
{
kimlikno = o.KimlikNumarasi,
ad = o.Ad,
soyad = o.Soyad,
dogumtarihi = o.DogumTarihi,
adres = o.Adres
}
).ToList();
}
}
public void UpdateStudent()
{
if (kimlikno != 0)
{
using (OgrenciDBEntities db = new OgrenciDBEntities())
{
Ogrenci ogr = db.Ogrenci.Where(o => o.KimlikNumarasi == kimlikno).FirstOrDefault();
ogr.Ad = ad;
ogr.KimlikNumarasi = Convert.ToInt16(kimlikno);
ogr.Soyad = soyad;
ogr.DogumTarihi = dogumtarihi;
ogr.Adres = adres;
db.SaveChanges();
}
}
}
}
}
Any help would be appreciated, thanks in advance
解决方案
You should use Repository or Unit of Work design pattern with Entity Framework.
这篇关于实现桥梁设计模式到实体框架的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文