Пример #1
0
        public async Task <Tuple <bool, string> > GenerateMultipleRegisterKeys(MultipleRegisterKey obj)
        {
            Tuple <bool, string> result = null;

            try
            {
                result = await _repo.GenerateMultipleRegisterKeys(obj);
            }
            catch (Exception ex)
            {
                ErrorLog.Write(ex);
            }

            return(result);
        }
        public async Task <Tuple <bool, string> > GenerateMultipleRegisterKeys(MultipleRegisterKey multipleKeys)
        {
            Tuple <bool, string> resultKey = null;
            MultipleRegisterKey  regkey    = new MultipleRegisterKey();
            int       insertStatus         = -1;
            DataTable dtName = null;

            try
            {
                var parameters = new DynamicParameters();
                using (SqlConnection cxn = new SqlConnection(_dcDb))
                {
                    parameters.Add("@UserID", multipleKeys.UserID, DbType.Int32);
                    parameters.Add("@KeyType", multipleKeys.KeyType, DbType.String);
                    parameters.Add("@NoOfKeys", multipleKeys.NoOfKeys, DbType.Int32);
                    parameters.Add("@IsWallet", multipleKeys.IsWallet, DbType.Boolean);
                    parameters.Add("@MultiKeysTable", CreateTableMultipleRegKeys(multipleKeys.NoOfKeys, multipleKeys.UserID, dtName).AsTableValuedParameter());

                    insertStatus = await cxn.ExecuteScalarAsync <int>("dbo.Insert_MultipleRegisterKey", parameters, commandType : CommandType.StoredProcedure);

                    cxn.Close();
                }

                if (insertStatus == 0)
                {
                    resultKey = Tuple.Create(true, "Multiple register keys generated successfully.");
                }
                else
                {
                    Tuple.Create(false, "Multiple register keys generation failed.Please try again.");
                }
            }
            catch (Exception ex)
            {
                ErrorLog.Write(ex);
                resultKey = Tuple.Create(false, "Oops! " + ex.Message + ".Please try again.");
            }

            return(resultKey);
        }