Я пытаюсь получить значения базы данных и привязку к таблице данных, используя следующий запрос
sql = @"SELECT member_Id, 30*memberToMship_ChargePerPeriod / DateDiff(memberToMship_EndDate,
memberToMship_StartDate) As monthlyamount,
PERIOD_DIFF(DATE_FORMAT(now(),'%Y%m'),
DATE_FORMAT(memberToMship_StartDate,'%Y%m')) + (DAY(memberToMship_StartDate) < memberToMship_DueDay)+ (DAY(now()) > memberToMship_DueDay)-1 AS ExpPayments,
SUM(memberToMship_InductionFee+memberToMship_JoinFee+
(IF(mshipOption_Period='year',
TIMESTAMPDIFF (YEAR ,memberToMship_StartDate, memberToMship_EndDate),
TIMESTAMPDIFF (MONTH ,memberToMship_StartDate, memberToMship_EndDate)) * memberToMship_ChargePerPeriod)) as value
FROM membertomships
INNER JOIN mshipoptions on membertomships.mshipOption_Id = mshipoptions.mshipoption_Id";
, и это мой код для получения данных из базы данных
string memberid;
double value = 0.0;
double expectedpayment=0.0;
double monthlypayamount=0.0;
int dueday = 0;
dt = xxxxxx.GetData(sql, mf);
if (dt != null && dt.Rows.Count > 0)
{
memberid = Convert.ToInt32(dt.Rows[0]["member_Id"]).ToString();
monthlypayamount = Convert.ToDouble(dt.Rows[1]["monthlyamount"]);
expectedpayment = Convert.ToDouble(dt.Rows[2]["ExpPayments"]);
value = Convert.ToDouble(dt.Rows[3]["value"]);
}
но я получаю сообщение об ошибке
"исключение индекса вне диапазона"
и такой ошибки
"нетстрока в позиции 1 "
Кто-нибудь, пожалуйста, помогите в этом ...