C# 从控制器到Razor视图的LINQ查询中获取详细信息
目前正在尝试在我的应用程序中构建公告,登录的用户只需在文本框中键入一些内容,结果就会与其他公告列表一起显示 我的问题是,我不想显示姓名的下拉框,我只想要登录发布的管理员ID。仅供参考,我在这个应用程序中搞砸了我的管理员,他们的ID和他们的用户名不同,但他们的用户名是相同的,这就是我获取他们ID的方式 我想在我的razor页面的HiddenFor中存储linq查询的结果。我一直在尝试使用ViewBags,但我刚刚得到无法将类型“int”隐式转换为“system.collections.ienumerable” 以下是我的控制器的创建部分:C# 从控制器到Razor视图的LINQ查询中获取详细信息,c#,linq,C#,Linq,目前正在尝试在我的应用程序中构建公告,登录的用户只需在文本框中键入一些内容,结果就会与其他公告列表一起显示 我的问题是,我不想显示姓名的下拉框,我只想要登录发布的管理员ID。仅供参考,我在这个应用程序中搞砸了我的管理员,他们的ID和他们的用户名不同,但他们的用户名是相同的,这就是我获取他们ID的方式 我想在我的razor页面的HiddenFor中存储linq查询的结果。我一直在尝试使用ViewBags,但我刚刚得到无法将类型“int”隐式转换为“system.collections.ienume
// GET: Bulletins/Create
public ActionResult Create()
{
string username = Membership.GetUser().UserName;
var getAdmin = (from a in db.Admins
where username == a.AdminUsername
select a.AdministrationId).SingleOrDefault();
ViewBag.AdministrationId = new SelectList(db.Admins, "AdministrationId", "AdministratorName");
return View();
}
// POST: Bulletins/Create
// To protect from overposting attacks, please enable the specific properties you want to bind to, for
// more details see https://go.microsoft.com/fwlink/?LinkId=317598.
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "BulletinsID,DetailsOfBulletin,AdministrationId")] Bulletins bulletins)
{
if (ModelState.IsValid)
{
string username = Membership.GetUser().UserName;
var getAdmin = (from a in db.Admins
where username == a.AdminUsername
select a.AdministrationId).SingleOrDefault();
db.Bulletins.Add(bulletins);
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.AdministrationId = new SelectList(db.Admins, "AdministrationId", "AdministratorName", bulletins.AdministrationId);
return View(bulletins);
}
我的观点是:
@Html.HiddenFor(model => model.AdministrationId)
老实说,我找不到任何帮助,所以我们将不胜感激。x首先,您应该具体化查询,以从数据库中获取所有管理对象:
var adminIds = db.admins.Select(a => a.Id).ToList();
ViewBag.AdministrationIds = adminIds;
然后,如果使用ViewBag访问视图中的管理员ID,则需要对其进行foreach,并以ID作为值呈现隐藏输入:
@{
foreach (var item in ViewBag.AdministrationIds)
{
<input type ="hidden" value="@item" />
}
}
@{
foreach(ViewBag.AdministrationId中的变量项)
{
}
}