PDA

View Full Version : محاسبه جريمه در سي شارپ



hasty0087
سه شنبه 06 مهر 1389, 10:08 صبح
سلام دوستان.
من مي خوام مقدار فيلد جريمه به ازاي يك روز رو از پايگاه بخونم و اون وقت به ازاي روزهاي ديركرد، مبلغ كل جريمه رو محاسبه كنم. خطا مي ده. لطفا راهنمايي كنيد.
از اين خط خطا مي گيره:


decimal MainPenalty = DT.Rows[0].Field<SqlMoney>("Book").ToDecimal();

متن خطا: Specified cast is not valid.

كد:


PersianCalendar pc = new PersianCalendar();
DateTime date = Convert.ToDateTime(pc.GetYear(DateTime.Now).ToStri ng()+"/" + pc.GetMonth(DateTime.Now).ToString()+"/" + pc.GetDayOfMonth(DateTime.Now).ToString());
DataTable DT = ClsPenalty.GetPenalty();
ClsRecieveExtention.EditBookStudentRecieve(Convert .ToInt64(row.Cells[0].Value), Date);
decimal MainPenalty = DT.Rows[0].Field<SqlMoney>("Book").ToDecimal();
SqlMoney Penalty = 0;
double diff = (date - Convert.ToDateTime(dataGridView1.CurrentRow.Cells[6].Value)).TotalDays;
for (int i = 1; i <= diff; i++)
Penalty = Penalty + MainPenalty;
MessageBox.Show("ميزان جريمه به ازاي " + diff + "روز، " + Penalty, "پيام", MessageBoxButtons.OK, MessageBoxIcon.Information);

mmd2009
چهارشنبه 07 مهر 1389, 05:00 صبح
با سلام

یک نمونه مثال بذارید تا بشه راحتر روش فکر کرد و نظر داد

موفق باشید