Esempio n. 1
0
        public async Task UpdateUsersettingsAsync(DbpUsersettings usersetting)
        {
            try
            {
                if (!Context.DbpUsersetting.AsNoTracking().Any(x => x.Usercode == usersetting.Usercode && x.Settingtype == usersetting.Settingtype))
                {
                    //add
                    Context.DbpUsersetting.Add(usersetting);
                }
                else
                {
                    //update
                    Context.Attach(usersetting);
                    Context.Entry(usersetting).Property(x => x.Settingtext).IsModified     = true;
                    Context.Entry(usersetting).Property(x => x.Settingtextlong).IsModified = true;
                }

                await Context.SaveChangesAsync();
            }
            catch (System.Exception ex)
            {
                Logger.Error(ex.ToString());
                //SobeyRecException.ThrowSelf(Locallanguage.LoadString("Fill SetUserSetting Exception "),ex,2,10013019);
                SobeyRecException.ThrowSelfNoParam("UpdateUsersettingsAsync", GlobalDictionary.GLOBALDICT_CODE_FILL_USER_SETUSERSETTING_EXCEPTION, Logger, ex);
            }
        }
Esempio n. 2
0
        public async Task UpdateUserSettingAsync(string userCode, string settingType, string settingText)
        {
            if (userCode == string.Empty || settingType == string.Empty)
            {
                return;
            }

            int byteLength = 0;

            byteLength = Encoding.UTF8.GetByteCount(settingText);

            //修改为当字符串的字节数小于4000时,将METADATA存入到METADATA中,反之存到METADATALONG,不过在存之前先判断字符串的字符数,
            //若字符数小于或等于4000,将补足空格到4001个字符,存入到METADATALONG中。
            var usersetting = new DbpUsersettings()
            {
                Usercode    = userCode,
                Settingtype = settingType
            };

            if (byteLength > 4000)
            {
                usersetting.Settingtextlong = FillBlankToString(settingText, byteLength);
            }
            else
            {
                usersetting.Settingtext = settingText;
            }

            await Store.UpdateUsersettingsAsync(usersetting);
        }