PDA

View Full Version : آموزش حذف از ویو مدل



leilast
سه شنبه 05 دی 1396, 13:05 عصر
سلام دوستان
من در حذف از ویو مدل با خطای انتساب مقادیر مواجه میشم. منظورم اینه که ای دی رو نمیتونه درست پیدا کنه .
یک آموزش از حذف ازویو مدل میشه اینجا بذارید. من هر چی سرچ میکنم مربوط به اپدیت هست و دیلیت رو کامل نگفته.
(در ضمن آی دی هم از جدول به کنترلر پاس داده میشه)
ممنون میشم.

اینجا هم کدم رو میزارم
(فیلد از یک جدول انتخاب میشه که حاصل از join سه تا جدول هست اما حذف فقط از یک جدول هست)
این کد کنترلر هست

public ActionResult DeleteUser(int id)
{
var db = new ParsDataEntities();

var user=db.UsersInfos.Find(id);
db.UsersInfos.Remove(user);
db.SaveChanges();
return View("UserManagement");


}


این هم جایی که از ویو ای دی رو پاس دادم

@Html.ActionLink("حذف", "DeleteUser", new { id = item.UserInfos.Usr_EmpID }, new { @style = "color:white;" })</span>

Moien Tajik
سه شنبه 05 دی 1396, 13:20 عصر
منظورتون از حذف ویو مدل چیه ؟
ویو مدل صرفا فقط برای نمایش و Read هست.
ارورتون رو قرار بدید بهتر میشه راهنمایی کرد.

http://www.c-sharpcorner.com/UploadFile/tirthacs/crud-operation-using-entity-framework-code-first/

leilast
سه شنبه 05 دی 1396, 14:09 عصر
من از یک ویومدل برای نمایش اطلاعات در یک جدول استفاده کردم.
برای هر یک از ردیف های جدول قابلیت حذف رو هم قرار دادم.
نمایش اطلاعات از ویو مدل درست انجام میشه. برای حذف طبیعتا باید ای دی رو بفرستم به اکشن delete و اطلاعات مربوط به اون رو از جدول پاک کنم.
همونطور هم که گفتم حذف از یک مدل هست.
(پس اطلاعات توسط ویو مدل در یک جدول نمایش داده میشه و بعد قابلیت حذف هم برای هر یک از ردیف ها هست)

من با دو تا خطا مواجه میشم. اولیش مربوط به کد نیست (مربوط به یکی از قابلهای dll هست)
بعد از اینکه yes رو میزنم با خطای دوم مواجه میشم.

mr.sirwan
سه شنبه 05 دی 1396, 21:18 عصر
خب شما مطمئنین که یوزری با این ایدی دارین؟ این ارور میگه ابجکت user ناله :لبخند:

EnKamran
پنج شنبه 07 دی 1396, 21:54 عصر
شما همیشه تو حذف دیتا اول نال بودن رو چك كنید، بهتره كه به این صورت بنویسید:
Var user = db.UserInfos.Find(id);
If(user! = null)
{
حذف كاربر
}

EnKamran
پنج شنبه 07 دی 1396, 21:58 عصر
خطایی كه شما میگیرید مربوط به این هست كه اصلا ركوردی پیدا نشده كه بخواد حذفش كنه اول مطمعن بشید آی دی درست رو دارید پاس میدید بعد تودیتابیس به صورت دستی بیند ركوردی با این آی دی وجود داره؟(چون ممكنه به هر دلیلی حذف كرده باشیدش قبلا)