7、vs2022_CommonLib库下常用工具类封装

1、BaseModel

 public class BaseModel<T> where T : class, new()
    {
        /// <summary>
        /// 获取上下文
        /// </summary>
        /// <returns>EF上下文</returns>
        public static DemoContext Create()
        {
            DemoContext db = CallContext.GetData("db") as DemoContext;
            if (db == null)
            {
                db = new DemoContext();
                CallContext.SetData("db", db);
            }
            return db;
        }

        /// <summary>
        /// 上下文
        /// </summary>
        DemoContext db = Create();

        /// <summary>
        /// 查询数据,IQueryable延迟加载集合,调用时才会去加载至内存,List查询后会立即加载至内存中
        /// </summary>
        /// <param name="whereLambda">查询条件</param>
        /// <returns>数据集合</returns>
        public IQueryable<T> GetList(Expression<Func<T, bool>> whereLambda)
        {
            return db.Set<T>().Where(whereLambda);
        }

        public int Add(T entity)
        {
            db.Set<T>().Add(entity);
            return db.SaveChanges();

        }

        public int Delete(int id)
        {
            //通过ID查询这条实体
            T entity = db.Set<T>().Find(id);
            db.Set<T>().Remove(entity);
            return db.SaveChanges();
        }

        public int Update(T entity)
        {
            //设置当前实体的状态为修改
            db.Entry(entity).State = System.Data.Entity.EntityState.Modified;
            return db.SaveChanges();
        }
    }

 

 

 

 

switch case语句基本语法

switch (表达式)
{
    case 值1:
        语句1;
        break;
   case 值2:
        语句2;
          break;
       。。。
      default:
         语句n;
        break;
}

 

switch()中的变量可以是整形、string、bool、char、枚举或相应可以为null的类型,必须有一个定值。
每个case标签后是常量表达式的值,不必连续,也不必按特定顺序排列,但不能相同,否则会出现错误。
default标签可选,意思是其余的结果。
break语句的作用是在case与case之间中断程序。
switch…case与if…lse区别:

1、都可以用来实现多路分支。
2、If eles实现两路、三路分支比较方便,switch…case实现三路以上分支结构更清晰,代码可读性更强。
3、因为case语句后面必须是定值,所以不适合做范围的判断。

if…else 语句

if(boolean_expression)
{
   /* 如果布尔表达式为真将执行的语句 */
}
else
{
   /* 如果布尔表达式为假将执行的语句 */
}

if…else if…else 语句

if(boolean_expression 1)
{
   /* 当布尔表达式 1 为真时执行 */
}
else if( boolean_expression 2)
{
   /* 当布尔表达式 2 为真时执行 */
}
else if( boolean_expression 3)
{
   /* 当布尔表达式 3 为真时执行 */
}
else 
{
   /* 当上面条件都不为真时执行 */
}

else 可有可没有,多少个都无所谓,
else 可以没有,但是只要有,就只能有一个,就一定是在判断结构的最后

posted @ 2021-10-09 15:21  生之韵  阅读(253)  评论(2编辑  收藏  举报