예제 #1
0
        public int Save <T>(RepositoryRecord <T> item, string userName) where T : RepositoryRecord <T>, new()
        {
            //validation
            item.ValidateColumnSettings();
            if (item.HasErrors())
            {
                StringBuilder sb     = new StringBuilder();
                List <string> errors = item.GetErrors();
                foreach (string error in errors)
                {
                    sb.Append(error + Environment.NewLine);
                }

                throw new SqlQueryException("There are errors saving this item: " + sb);
            }

            int result = item.IsNew ? Insert(item, userName) : Update(item, userName);

            return(result);
        }