zoukankan      html  css  js  c++  java
  • EF方便的添加一条信息...

    //刚开始通过EF添加数据都是这样的...↓
    var db = new DBEntities()
    T_User t_userinfo = new T_User()
    {
    Type = "type1",
    AliasName = "alisaname1",
    Description = "description..."
    };
    db.T_UserGroup.Add(t_userinfo);
    db.SaveChanges();
    //这个表有几个字段就要需要一个个的赋值...
    //如果字段太多代码也会相应增加...开发速度也慢..
    //想封装起来直接调用就好了
    //封装的方法...        
    public static TEntity setNewTEntityValue<TEntity>(Dictionary<string, Object> userInfoDic) where TEntity : class
            {
                var entity = Activator.CreateInstance<TEntity>();
                int tempInt = 0;
                DateTime tempDateTime = DateTime.Now;
                foreach (var pro in entity.GetType().GetProperties())
                {
                    //如果传来的参数中有 全部属性中的值,则开始赋值...
                    //目的主要还是判断传来要更新的有哪些参数...
                    if (userInfoDic.ContainsKey(pro.Name))
                    {
                        switch (pro.PropertyType.Name.ToLower())
                        {
                            case "int32":
                                //pro.SetValue(entity, userInfoDic[pro.Name].ToString());//测试代码...
                                int.TryParse(userInfoDic[pro.Name].ToString(), out tempInt);
                                pro.SetValue(entity, tempInt);
                                break;
                            case "string":
                                pro.SetValue(entity, userInfoDic[pro.Name].ToString());
                                break;
                            case "datetime":
                                //tempDateTime = DateTime.ParseExact(key.Value.ToString(), "", System.Globalization.CultureInfo.InvariantCulture);
                                pro.SetValue(entity, tempDateTime);
                                break;
                            default:
                                pro.SetValue(entity, userInfoDic[pro.Name].ToString());
                                break;
                        }
                    }
                }
                return entity;
            }
    //调用方法
    
                        Dictionary<string, object> dic = new Dictionary<string, object>();
                        dic.Add("Type", "type1");
                        dic.Add("AliasName", "alisaname1");
                        dic.Add("Description", "description...");//我这里是添加的测试数据,本来的数据是web端传过来json,我解析出来的就和dic是一样的字典表
                        T_User info = CommonService.setNewTEntityValue<T_User>(dic);
                        db.T_UserGroup.Add(info);
                        db.SaveChanges();

    记录点滴...^_^

  • 相关阅读:
    浅谈 java 比较器
    浅谈lambda表达式
    使用DateLocaleConverter和SimpleDateFormat实现字符串转换成日期
    myeclipse中运行tomcat报错java.lang.NoClassDefFoundError
    《谁说菜鸟不会数据分析》读书笔记(1)
    撰写报告要点
    分析报告_问题界定篇
    数据分析报告
    kaggle入门之Titanic生存预测
    pandas基础
  • 原文地址:https://www.cnblogs.com/love-zf/p/5707478.html
Copyright © 2011-2022 走看看