创建DropDownListFor我想在ASP.NET MVC与数据库中创建DropDownListFor,我有一个问题“编译器错误信息:CS1955:不能使用的方法等非可调用成员‘TreeViewModel.TreeItems’。”与数据库
视图模型:
public class TreeViewModel
{
public List<DTree> leafs { get; set; }
[Display(Name = "Wybierz gałąź")]
public int SelectedRootId { get; set; }
public IEnumerable<SelectListItem> TreeItems
{
get { return new SelectList(leafs, "Id", "Name"); }
}
}
查看:
@model Apka.ViewModels.TreeViewModel
@using (Html.BeginForm("Exercise", "Home", FormMethod.Post))
{
@Html.DropDownListFor(m => m.SelectedRootId, Model.TreeItems());
<input type="submit" value="przycisk"/>
}
控制器:
public ActionResult Exercise()
{
var dt = new DbAccess();
var listTree = dt.GetAllTree();
var list = new List<DTree>();
foreach (var row in listTree)
{
list.Add(
new DTree
{
Id = row.Id,
Name = row.Name,
ParentId = (Convert.ToInt32(row.ParentId) != 0) ? Convert.ToInt32(row.ParentId) : (int?)null
});
}
TreeViewModel tvm = new TreeViewModel();
tvm.leafs = list;
return View();
}
[HttpPost]
public ActionResult Exercise(TreeViewModel tree)
{
var id = tree.SelectedRootId;
ViewBag.ID = id;
return View();
}
'Model.TreeItems()'应该是'Model.TreeItems' –
变化后此相同 – Duzy
你能给我DTREE的参考?我试图在一个小提琴手上实现它。或者更好,但在这里添加你的提琴手(https://dotnetfiddle.net/CsMvc)并发布链接? –