zoukankan      html  css  js  c++  java
  • Entity Framework自用的DataBase基类

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using Model;
     6 using System.Data.Objects.DataClasses;
     7 
     8 namespace Work
     9 {
    10     public class DataBase<T> where T : EntityObject
    11     {
    12         protected OfficeAnywhereEntities entities = new OfficeAnywhereEntities();
    13 
    14         /// <summary>
    15         /// 添加
    16         /// </summary>
    17         /// <param name="t"></param>
    18         /// <returns></returns>
    19         public bool Add(T t)
    20         {
    21             entities.AddObject(typeof(T).Name, t);
    22             return SaveChanges() > 0;
    23         }
    24 
    25         /// <summary>
    26         /// 执行
    27         /// </summary>
    28         /// <returns></returns>
    29         private int SaveChanges()
    30         {
    31             try
    32             {
    33                 return entities.SaveChanges();
    34             }
    35             catch (Exception e)
    36             {
    37                 throw e.InnerException;
    38             }
    39             
    40         }
    41 
    42         /// <summary>
    43         /// 寻找对象
    44         /// </summary>
    45         /// <param name="Guid"></param>
    46         /// <returns></returns>
    47         private T FindByGuid(string Guid)
    48         {
    49             T t = null;
    50             entities.CreateObjectSet<T>().ToList().ForEach(p => {
    51                 if (p.EntityKey.EntityKeyValues[0].Value.ToString() == Guid)
    52                     t = p;
    53             });
    54             return t;
    55         }
    56 
    57         /// <summary>
    58         /// 删除
    59         /// </summary>
    60         /// <param name="Guid"></param>
    61         /// <returns></returns>
    62         public bool DelByGuid(string Guid)
    63         {
    64             T t = FindByGuid(Guid);
    65             if(t!=null)
    66             entities.DeleteObject(t);
    67             return SaveChanges() > 0;
    68         }
    69 
    70         /// <summary>
    71         /// 更新
    72         /// </summary>
    73         /// <param name="Guid"></param>
    74         /// <param name="act"></param>
    75         /// <returns></returns>
    76         public bool UpdateByGuid(string Guid, Action<T> act)
    77         {
    78             T t = FindByGuid(Guid);
    79             act(t);
    80             return SaveChanges() > 0;
    81         }
    82 
    83         /// <summary>
    84         /// 列表
    85         /// </summary>
    86         /// <returns></returns>
    87         public List<T> GetList()
    88         {
    89             return entities.CreateObjectSet<T>().ToList();
    90         }
    91     }
    92 }
  • 相关阅读:
    bzoj 1030 [JSOI2007]文本生成器
    Swift 学习笔记 (闭包)
    Swift 学习笔记 (函数)
    HTML 学习笔记 JQueryUI(Interactions,Widgets)
    HTML 学习笔记 JQuery(表单,表格 操作)
    HTML 学习笔记 JQuery(animation)
    HTML 学习笔记 JQuery(盒子操作)
    HTML 学习笔记 JQuery(事件)
    HTML 学习笔记 JQuery(DOM 操作3)
    HTML 学习笔记 JQuery(DOM 操作2)
  • 原文地址:https://www.cnblogs.com/suchi/p/3984606.html
Copyright © 2011-2022 走看看