我使用了q Linq查询并在列表索引顶部添加了新的一条记录
List<PMAST> lstPmast = new List<PMAST>();
lstPmast.Add(new PMAST() { EmpId = 0, PCODE = "--Select--", PNAME = "--Select--" });
var GetEmployeeLst = (from d in db.PMASTs
where d.CNO == iCNO && d.Isdeleted != true
select new
{
EmpId = d.EmpId,
PCODE = d.PCODE,
PNAME = d.PNAME
}).ToList();
答案 0 :(得分:1)
您可以通过多种方式执行此操作,其中一种方法只是使用AddRange
的{{1}}方法:
List
答案 1 :(得分:1)
由于您的问题是用ASP.NET MVC标记的,我假设您尝试在下拉列表中添加一些默认值。如果是这种情况,您可以直接使用相应的DropDownListFor
帮助程序,无需在视图模型中插入此类虚假记录即可实现此目的:
@Html.DropDownListFor(x => x.SelectedEmployee, Model.Employees, "--Select--")
您不再需要更改数据模型来实现纯粹的UI内容。
答案 2 :(得分:0)
使用此代替Add:
lstPmast.Insert(0,new PMAST() { EmpId = 0, PCODE = "--Select--", PNAME = "--Select--" });
答案 3 :(得分:0)
您可以按list.add添加ne记录,如:
lstPmast.add(newlistitem);
答案 4 :(得分:0)
看起来你的对象列表最终会出现在asp.net组合框或winform组合框中。
这是我的建议
List<Tuple<int,string>> lstPmast;
var lstPmast = db.PMASTs.Where(d => d.CNO == iCNO && !d.Isdeleted).Select(d => Tuple.Create(d.EmpId, e.PCODE + "-" + e.PNAME)).ToList();
// then add a default as the first item in the list
lstPmast.Insert(0, Tuple.Create(0, "--- Select ---"));
// bind the list to your combobox here. Use Item1 as value and Item2 as the description