در مرحله اول شما نباید اجازه بدی فیلدی در بانک بدون مقدار بمونه(در صورت وارد نکردن مقداری یه مقدار پیش فرض قرار بده.منطقی ترش اینه که در اون فرمی که اطلاعات وارد میشه با یک errorProvider ورودی ها رو چک کنید که خالی نباشن ) یا اگر موند موقع سکلت چک کن و اگر مقداری برنگردوند اون سلول رو برابر 0 قرار بده
var select_price_bargh = from a in db.tbl_ghobozs
where a.date.Substring(0, 4) == year
select new { a.price };
if (select_price_bargh.Count() != 0)
{
dataGridView1.CurrentRow.Cells[3].Value = select_price_bargh.Sum(c => (Convert.ToInt32(c.price)));
}
else
{
dataGridView1.CurrentRow.Cells[3].Value = "0";
}