ورود

View Full Version : سوال: return view در اکشن



mohammad.esi
پنج شنبه 14 مرداد 1395, 18:24 عصر
سلام دوستان عزیز.
من میخوام دوتا userid رو توی دو تا جدول بررسی کنم و در صورتی که مقدارشون یکی بود رکورد اون جدول رو با ویومدل به ویو ارسال کنم.اومدم توی foreach ،userid رو پیدا کردم و بررسی کردم و return کردم. ولی برنامه اروری میگیره ک باید یه return دیگه(کلی) هم بزارم و از اونجایی که return null نمیتونم بزارم چیزی به ذهنم نرسید .(خط اخر که کامنت کردم).نمیشه به جای foreach از روش دیگه ای استفاده کرد؟؟؟ لطفا راهنمایی بفرمایید public ActionResult show()
{
var r = Session["username"];
var user = db.Users.Where(x => x.UserName == r.ToString()).ToList();

foreach (var item1 in user)
{
foreach (var item2 in db.allTables)
{

return View(db.allTables.Where(x => x.user_id == item2.user_id));

}
}

//return View(db.allTables.ToList());

}

hakim22
پنج شنبه 14 مرداد 1395, 19:38 عصر
public ActionResult show()
{
var r = Session["username"];
var user = db.Users.Where(x => x.UserName == r.ToString()).ToList();

IEnumerable<[type]> result;

foreach (var item1 in user)
{
foreach (var item2 in db.allTables)
{

result= db.allTables.Where(x => x.user_id == item2.user_id);

}
}

return View(result.ToList());

}


در


IEnumerable<[type]> result;


بجای [type] نوع کلاس داخل allTables رو قرار بدید.

هر متدی بهتره فقط یک return داشته باشه و اون هم در آخر متد قرار داشته باشه.

parsdarab
جمعه 15 مرداد 1395, 09:49 صبح
چه عجب دست به کد شدید