【发布时间】:2018-11-30 14:51:33
【问题描述】:
我正在尝试显示两个按钮,前提是它位于现有列表中。但到目前为止,它还没有成功。
我想要某个按钮显示它是否在 Wishlist Controller 中声明的列表中:
public ActionResult Index()
{
IQueryable<WishlistModel> model = null;
int wishlist_id = Check();
if (wishlist_id != 0)
{
var WishLines = _context.WishLines.Where(l => l.Wishmain_id == wishlist_id).ToList();
if (WishLines.Count() > 0)
{
model = from wishlines in _context.WishLines
join items in _context.Items on wishlines.itm_id equals items.id
join wishmain in _context.WishMains on wishlines.Wishmain_id equals wishmain.id
where wishlines.Wishmain_id == wishlist_id
select new WishlistModel
{
description = items.description,
price = items.price,
ordline_id = wishlines.id,
photo_url = items.photo_url,
item_id = items.id
};
ViewBag.model_for_view = model;
return View(model.ToList());
}
}
ViewBag.model_for_view = model;
return View();
}
当它不在列表中时显示某个按钮
我在视图上这样尝试过:
@{
WishLines wishLine = new WishLines();
bool check = wishLine.itm_id == item.id;
if (SignInManager.IsSignedIn(User))
{
if (check == true)
{
<a>Remove from favorites list</a>
}
else
{
<a>Add to favorites list</a>
}
}
}
但这只会显示else 选项,即使它在列表中。
我怎样才能让它显示正确的按钮?
【问题讨论】:
-
item.id来自视图上的模型,@model IEnumerable<bytme.Models.Item>和wishLine.itm_id来自模型 WishLines -
因此,您创建了一个空的 WishLines 对象,并惊讶于 itm_id 与任何内容都不匹配?
-
我将代码更改为从控制器继承 ViewBag 以继承 WishLines itm_id。感谢所有让我看到我的错误的人!创建一个空的 WishLines 不是检索 id 的方法。
标签: c# asp.net-mvc razor asp.net-core-mvc