Daos/PatternCustomerMasterDao.cs

using System;
using System.Collections.Generic;
using System.Data;
using ChatworkBulkSender.Dtos;
using ChatworkBulkSender.Utils;

namespace ChatworkBulkSender.Daos
{
    class PatternCustomerMasterDao
    {
        private readonly DBAccess _db = new DBAccess();

        /// <summary>
        /// 指定パターンIDに紐づく顧客一覧を取得
        /// </summary>
        public List<PatternCustomerMasterDto> GetCustomersByPatternId(int patternId)
        {
            string sql = $@"
                SELECT
                  *
                FROM dbo.送信パターンマスタ_顧客
                WHERE 送信パターンID = @patternId
                ORDER BY 登録日時";
            var param = new Dictionary<string, object> {
                { "@patternId", patternId }
            };

            DataTable dt = _db.ExecQuery(sql, param);
            var list = new List<PatternCustomerMasterDto>();
            foreach (DataRow row in dt.Rows)
            {
                list.Add(new PatternCustomerMasterDto
                {
                    PatternId = row.Field<int>("送信パターンID"),
                    ManagementNumber = row.Field<int>("管理番号"),
                    CreatedDate = row.Field<DateTime?>("登録日時"),
                    CreatedBy = row.Field<string>("登録ユーザ")
                });
            }
            return list;
        }
    }
}