Asp.net 没有类型为';IEnumerable<;选择列表项>';那有钥匙';ddlcontent';
当我尝试访问控制器中的下拉值时,我使用该下拉值来获取此错误“没有具有键“ddlcontent”的“IEnumerable”类型的ViewData项”。现在的问题是,当我使用下面的当前视图代码时,它什么也不显示。请告诉我我在哪里错过了它 我尝试检查的链接有: 但到目前为止,他们都没有提供帮助。 看法 发件人: 您缺少设置中的文本和值是哪个字段 选择列表本身。这就是为什么它在每个节点上都执行Asp.net 没有类型为';IEnumerable<;选择列表项>';那有钥匙';ddlcontent';,asp.net,asp.net-mvc,asp.net-core,asp.net-mvc-4,asp.net-mvc-3,Asp.net,Asp.net Mvc,Asp.net Core,Asp.net Mvc 4,Asp.net Mvc 3,当我尝试访问控制器中的下拉值时,我使用该下拉值来获取此错误“没有具有键“ddlcontent”的“IEnumerable”类型的ViewData项”。现在的问题是,当我使用下面的当前视图代码时,它什么也不显示。请告诉我我在哪里错过了它 我尝试检查的链接有: 但到目前为止,他们都没有提供帮助。 看法 发件人: 您缺少设置中的文本和值是哪个字段 选择列表本身。这就是为什么它在每个节点上都执行.ToString() 对象。你可以认为这是一个 SelectListItem它应该足够智能,可以检测到此
.ToString()
对象。你可以认为这是一个
SelectListItem
它应该足够智能,可以检测到此。。。但事实确实如此
不是
因此,在您的情况下,您需要将List
转换为List
,如下所示:
ViewBag.ddlcontent = new SelectList(listone.Select(i=> new SelectListItem()
{
Text = i,
Value = i
}).ToList(),"Value" , "Text");
@Html.DropDownList(“dllcontent”,ViewBag.ddlcontent作为SelectList)
@Sajid我使用了你的代码,但当我单击搜索按钮时什么都没有发生ildiz,我使用了你的代码,但当我单击搜索按钮时什么都没有发生,但你的问题不是单击,您是否使用此代码通过下拉菜单显示项目?它确实显示项目,但仍然不显示搜索结果。
[HttpGet]
public ActionResult TakeDailyAttendance(string ddlcontent, DateTime? startdate, DateTime? enddate)
{
var listone = new List<string>();
var nameqry = from n in db.Attendances
select n.Subject;
listone.AddRange(nameqry.Distinct());
ViewBag.ddlcontent = new SelectList(listone);
var tb_teachers = db.Attendances.Where(x => x.StartDate >= startdate && x.EndDate <= enddate && x.Subject.Contains(ddlcontent) && x.Approval == "Going").ToList();
return View(tb_teachers.ToList());
}
[Table("Attendance")]
public partial class Attendance
{
public int AttendanceId { get; set; }
[StringLength(50)]
public string TeacherId { get; set; }
[StringLength(50)]
public string FirstName { get; set; }
[StringLength(50)]
public string LastName { get; set; }
[StringLength(50)]
public string IdNumber { get; set; }
[StringLength(200)]
public string EmailId { get; set; }
[StringLength(50)]
public string PhoneNumber { get; set; }
[StringLength(200)]
public string SchoolName { get; set; }
[StringLength(50)]
public string District { get; set; }
[StringLength(50)]
public string Province { get; set; }
public DateTime? Date { get; set; }
public int? EventID { get; set; }
[StringLength(100)]
public string Subject { get; set; }
[StringLength(300)]
public string Description { get; set; }
[StringLength(200)]
public string Location { get; set; }
[Column(TypeName = "date")]
public DateTime? StartDate { get; set; }
[Column(TypeName = "date")]
public DateTime? EndDate { get; set; }
[StringLength(100)]
public string CourseId { get; set; }
[StringLength(50)]
public string AttendaceStatus { get; set; }
[StringLength(50)]
public string Approval { get; set; }
[StringLength(50)]
public string Pin { get; set; }
}
ViewBag.ddlcontent = new SelectList(listone.Select(i=> new SelectListItem()
{
Text = i,
Value = i
}).ToList(),"Value" , "Text");