コード例 #1
0
        private static void SetRdsParameters()
        {
            Parameters.Rds.SaConnectionString =
                Parameters.Rds.SaConnectionString.Replace(
                    "#ServiceName#", Environments.ServiceName);
            Parameters.Rds.OwnerConnectionString =
                Parameters.Rds.OwnerConnectionString.Replace(
                    "#ServiceName#", Environments.ServiceName);
            Parameters.Rds.UserConnectionString =
                Parameters.Rds.UserConnectionString.Replace(
                    "#ServiceName#", Environments.ServiceName);
            switch (Parameters.Rds.Provider)
            {
            case "Azure":
                Environments.RdsProvider = "Azure";
                Azures.SetRetryManager(
                    Parameters.Rds.SqlAzureRetryCount,
                    Parameters.Rds.SqlAzureRetryInterval);
                break;

            default:
                Environments.RdsProvider = "Local";
                break;
            }
            Environments.RdsTimeZoneInfo = TimeZoneInfo.GetSystemTimeZones()
                                           .FirstOrDefault(o => o.Id == Parameters.Rds.TimeZoneInfo);
            Environments.DeadlockRetryCount    = Parameters.Rds.DeadlockRetryCount;
            Environments.DeadlockRetryInterval = Parameters.Rds.DeadlockRetryInterval;
        }
コード例 #2
0
        public DataSet ExecuteDataSet()
        {
            var dataSet = new DataSet();

            SetCommand();
            Try(action: () =>
            {
                switch (SqlContainer.RdsProvider)
                {
                case "Azure":
                    var retryPolicy = Azures.RetryPolicy();
                    retryPolicy.ExecuteAction(() =>
                    {
                        using (var con = new ReliableSqlConnection(
                                   SqlCommand.Connection.ConnectionString))
                        {
                            con.Open(retryPolicy);
                            SqlCommand.Connection = con.Current;
                            SqlContainer.SqlDataAdapter(SqlCommand).Fill(dataSet);
                        }
                    });
                    break;

                default:
                    SqlContainer.SqlDataAdapter(SqlCommand).Fill(dataSet);
                    break;
                }
            });
            Clear();
            return(dataSet);
        }