【前言】
前面已经学习过了使用EF写SQL的查询和增加功能,下面我们来学习一下更新和删除功能。
更新
以更新顾客个人信息为例
接口
[OperationContract]
bool UpdateCustomer(T_Customer tcustomer);
具体实现
/// <summary>
/// 修改顾客个人信息
/// </summary>
/// <param name="tcustomer"></param>
/// <returns></returns>
public bool UpdateCustomer(T_Customer tcustomer)
{
using (ZerooSystemEntities examentity = new ZerooSystemEntities())
{
T_Customer t_customer = examentity.T_Customer.FirstOrDefault(model => model.CardNo == tcustomer.CardNo);
if (t_customer != null)
{
t_customer.Telephone = tcustomer.Telephone;
t_customer.CustomerName = tcustomer.CustomerName;
t_customer.Sex = tcustomer.Sex;
t_customer.Explain = tcustomer.Explain;
t_customer.Status = tcustomer.Status;
t_customer.Type = tcustomer.Type;
}
return examentity.SaveChanges() > 0;
}
}
删除
以删除用户信息为例
接口
[OperationContract]
bool DeleteCustomer(string cardNo);
具体实现
/// <summary>
/// 删除用户信息
/// </summary>
/// <param name="cardNo">卡号</param>
/// <returns></returns>
public bool DeleteCustomer(string cardNo)
{
using (ZerooSystemEntities examentity = new ZerooSystemEntities())
{
T_Customer customer = new T_Customer()
{
CardNo = cardNo
};
examentity.Entry(customer).State = System.Data.Entity.EntityState.Deleted;
return examentity.SaveChanges() > 0;
}
}
使用EF框架语句的删除
public bool DeleteCustomer(string cardNo)
{
using (ZerooSystemEntities examentity = new ZerooSystemEntities())
{
T_Customer customer =examentity.T_Customer.FirstOrDefault(m=>m.CardNo==cardNo);
if (customer!=null)
{
examentity.T_Customer.Remove(customer);
}
if(examentity.SaveChanges()>0))
{
}
}
增删改操作必须使用entity.SaveChanges()进行保存一下。
entity.SaveChanges()返回值为数据库里受影响的行数entity.SaveChanges()>0表示操作成功。
如entity.SaveChanges()=0则表示操作失败。