سلام و خسته نباشید من یک دیتا گرید دارم که میخوام اطلاعات هر سطر دونه دونه به دیتابیس اد بشه
کدی که نوشتم اینه ولی ارور
Cannot add an entity that already exists
میده
tblDaftarForosh tForosh = <span class="hljs-keyword">new</span> tblDaftarForosh();
PersianCalendar pc = <span class="hljs-keyword">new</span> PersianCalendar();
<span class="hljs-keyword">string</span> Datee = pc.GetYear(DateTime.Now).ToString() + <span class="hljs-string">"/"</span> + pc.GetMonth(DateTime.Now).ToString(<span class="hljs-string">"0#"</span>) + <span class="hljs-string">"/"</span> + pc.GetDayOfMonth(DateTime.Now).ToString(<span class="hljs-string">"0#"</span>);
<span class="hljs-keyword">for</span> (<span class="hljs-keyword">int</span> i = <span class="hljs-number">0</span>; i < dgvForosh.Rows.Count; i++)
{
tForosh.NameKala = dgvForosh.Rows[i].Cells[<span class="hljs-number">0</span>].Value.ToString();
tForosh.GhV = Convert.ToInt32(dgvForosh.Rows[i].Cells[<span class="hljs-number">1</span>].Value);
tForosh.Tedad = Convert.ToInt32(dgvForosh.Rows[i].Cells[<span class="hljs-number">2</span>].Value);
tForosh.GhKolkala = Convert.ToInt32(dgvForosh.Rows[i].Cells[<span class="hljs-number">3</span>].Value);
tForosh.GhKh = Convert.ToInt32(dgvForosh.Rows[i].Cells[<span class="hljs-number">4</span>].Value);
tForosh.Takhfif = Convert.ToInt32(txtTakhfif.Text);
tForosh.TDarsad = Convert.ToInt32(txtTDarsad.Text);
tForosh.TJashn = Convert.ToInt32(txtTJashnvare.Text);
tForosh.Date = Datee;
tForosh.Time = DateTime.Now.ToShortTimeString();
db.tblDaftarForoshes.InsertOnSubmit(tForosh);
db.SubmitChanges();
}
خب داره میگه این دیتا نمیتونه وارد بشه چون این دیتا یا موجودیت از قبل وجود داره
اگه تو بانک اطلاعاتی داری وارد میکنی برو چک کن ببین چه فیلدی کلید اصلی داری که شبیه اینه و داره خطا میده
طبق تجربه اگر فیلد identity داری برو ببین Auto کردیش یا نه
نیاد همش یه مقدار ثابت بزنه که قطعا در حالت عادی هم خطا میده
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)