public UserInfoAccount Save(UserInfoAccount userInfoAccount)
        {
            UserInfoAccount retUser;

            #region sqlText
            const string sqlText = @"INSERT INTO [DBO].[USERINFOACCOUNT] 
                                                                    VALUES(NEXT VALUE FOR UserDBSequence
                                                                            ,@USERINFOID
                                                                            ,@ACCOUNTTYPE
                                                                            ,@ACCOUNT)";

            #endregion
            using (var conn = SqlServerDB.GetSqlConnection())
            {
                var re = conn.Query <UserInfoAccount>(sqlText, userInfoAccount);
                retUser = re.FirstOrDefault();
            }
            return(retUser);
        }
 public UserInfoAccount Update(UserInfoAccount userInfo)
 {
     throw new NotImplementedException();
 }
Exemple #3
0
        public UserInfo Save(UserInfoAccount userInfo)
        {
            UserInfo retUser = null;

            #region sql
            #region sqlText
            const string sqlText        = @" INSERT INTO [dbo].[UserInfo]
                                                (
                                                        [ID]
                                                        ,[PASSWORD]
                                                       ,[NICKNAME]
                                                       ,[GENDER]
                                                       ,[COMPANYNAME]
                                                       ,[ADDRESS]
                                                       ,[REMARK])
                                                        OUTPUT INSERTED.*
                                                        VALUES(
                                                        NEXT VALUE FOR UserDBSequence   
                                                        ,@PASSWORD
                                                        ,@NICKNAME
                                                        ,@GENDER
                                                        ,@COMPANYNAME
                                                        ,@ADDRESS
                                                        ,@REMARK
                                                        ); ";
            const string mappingSqlText = @"INSERT INTO [DBO].[USERINFOACCOUNT] 
                                                                    VALUES(NEXT VALUE FOR UserDBSequence
                                                                            ,@USERINFOID
                                                                            ,@ACCOUNTTYPE
                                                                            ,@ACCOUNT)";
            #endregion

            #endregion

            #region USE DONET TRANSACTION
            using (var conn = SqlServerDB.GetSqlConnection())
            {
                conn.Open();
                var trans = conn.BeginTransaction();
                try
                {
                    var re = conn.Query <UserInfo>(sqlText, userInfo, trans);
                    retUser = re.FirstOrDefault();
                    //if (retUser != null)
                    //{
                    //    foreach (var account in userInfo.Accounts)
                    //    {
                    //        conn.Execute(mappingSqlText,
                    //            new { USERINFOID = retUser.Id, ACCOUNTTYPE = userInfo.AccountType, ACCOUNT = account }, trans);
                    //    }

                    trans.Commit();
                    //}
                }
                catch (Exception)
                {
                    trans.Rollback();
                }
            }
            #endregion

            #region USE SQL TRANSACTION
            #region transactionSqlText
            //            const string transactionSqlText = @"DECLARE @USERINFO_TEMP TABLE(
            //	                                                [ID] BIGINT,
            //	                                                [ACCOUNT] NVARCHAR(50) NOT NULL,
            //	                                                [PASSWORD] NVARCHAR(50) NOT NULL,
            //	                                                [NICKNAME] NVARCHAR(30) NULL,
            //	                                                [GENDER] BIT NULL,
            //	                                                [COMPANYNAME] NVARCHAR(50) NULL,
            //	                                                [ADDRESS] NVARCHAR(100) NULL,
            //	                                                [REMARK] NVARCHAR(100) NULL)
            //                                                DECLARE @USERINFO_ID BIGINT;
            //	                                                BEGIN TRAN
            //		                                                BEGIN TRY
            //			                                                INSERT INTO [dbo].[UserInfo]
            //			                                                ([ACCOUNT]
            //			                                                   ,[PASSWORD]
            //			                                                   ,[NICKNAME]
            //			                                                   ,[GENDER]
            //			                                                   ,[COMPANYNAME]
            //			                                                   ,[ADDRESS]
            //			                                                   ,[REMARK])
            //			                                                 OUTPUT INSERTED.* INTO @USERINFO_TEMP
            //			                                                 VALUES(
            //			                                                 @ACCOUNT
            //                                                            ,@PASSWORD
            //                                                            ,@NICKNAME
            //                                                            ,@GENDER
            //                                                            ,@COMPANYNAME
            //                                                            ,@ADDRESS
            //                                                            ,@REMARK);
            //			                                                 PRINT @USERINFO_ID;
            //			                                                 SELECT  @USERINFO_ID =ID  FROM @USERINFO_TEMP
            //			                                                 PRINT @USERINFO_ID;
            //			                                                 INSERT INTO [DBO].[UserInfo_AccountType_Mapping] VALUES                                                                    (@USERINFO_ID,@ACCOUNT_TYPE)
            //			                                                 COMMIT
            //			                                                 SELECT * FROM @USERINFO_TEMP ;
            //		                                                END TRY
            //		                                                BEGIN CATCH
            //			                                                THROW
            //                                                            ROLLBACK
            //			                                                RETURN
            //		                                                END CATCH";
            #endregion
            #region proc_transaction
            //const string insertProc = "PROC_INSERTUSERINFO";
            #endregion
            //using (var conn = SqlServerDB.GetSqlConnection())
            //{
            //    var re = conn.Query<UserInfo>(insertProc, new
            //    {
            //        Account_Type = userInfo.AccountType,
            //        ACCOUNT = userInfo.Account,
            //        PASSWORD = userInfo.Password,
            //        NICKNAME = userInfo.NickName,
            //        GENDER = userInfo.Gender,
            //        COMPANYNAME = userInfo.CompanyName,
            //        ADDRESS = userInfo.Address,
            //        REMARK = userInfo.Remark
            //    }, null, false, null, CommandType.StoredProcedure);
            //    retUser = re.FirstOrDefault();
            //}
            #endregion
            return(retUser);
        }
Exemple #4
0
 public bool Delete(UserInfoAccount userInfo)
 {
     throw new NotImplementedException();
 }