Пример #1
0
        public static int UpdateEntityForLobColumn <T>(IClassMapper classMap, T entity, out IDictionary <string, object> dynamicParameters) where T : class
        {
            dynamicParameters = entity.ToDictionary();

            var lobColumns = classMap.Properties.Where(p => p.LobType != LobType.None);

            if (lobColumns.Count() == 0)
            {
                return(0);
            }
            int success = 0;

            foreach (var lobColumn in lobColumns)
            {
                string lobColumnKey = lobColumn.PropertyInfo.Name;
                if (dynamicParameters.ContainsKey(lobColumnKey))
                {
                    var lobColumnValue = dynamicParameters[lobColumnKey];
                    dynamicParameters[lobColumnKey] = LobConverter.ConvertValue(lobColumnValue, lobColumn.LobType);

                    success++;
                }
            }
            return(success);
        }
Пример #2
0
        public static int UpdateDynamicParameterForLobColumn(IClassMapper classMap, IDictionary <string, object> dynamicParameters)
        {
            //自动转换clob 或者blob类型
            var lobColumns = classMap.Properties.Where(p => p.LobType != LobType.None);

            if (lobColumns.Count() == 0)
            {
                return(0);
            }
            int success = 0;

            foreach (var lobColumn in lobColumns)
            {
                string lobColumnKey = lobColumn.PropertyInfo.Name;
                if (dynamicParameters.ContainsKey(lobColumnKey))
                {
                    var lobColumnValue = dynamicParameters[lobColumnKey];
                    dynamicParameters[lobColumnKey] = LobConverter.ConvertValue(lobColumnValue, lobColumn.LobType);

                    success++;
                }
            }

            return(success);
        }