我的代码真的没有问题只是我喜欢有人要解决的问题,(因为我可能做错了)
我有一个viewmodel,它包含我传入视图的模型+ SelectLists
public class VmTheViewModel
{
public int Car_ID { get; set; }
public IEnumerable<SelectListItem> GetCars { get; set; }
public int Parent_ID { get; set; }
public IEnumerable<SelectListItem> GetParents { get; set; }
public T class1 { get; set; }
public T class2 { get; set; }
}
所以在视图页面上我包含
@model VmTheViewModel
现在,我将HTML.DropDownListFor
与我的SelectListItem
个
@Html.DropDownListFor(m => m.Car_ID, Model.GetCars)
但是,如果我想使用模型将class1中的属性绑定到HTML.TextBoxFor
,则会导致错误
@Html.TextBoxFor(Model => Model.class1.color)
// ERROR: cannot be inferred from the usage.
// Try specifying the type arguments explicitly
但这很有效,
@Html.TextBoxFor(x => x.class1.color)
我只想知道为什么我不能使用model.class1.color作为与DropDownListFor相同的对象(viewmodel)?为什么我需要引用一个新类型? (x =&gt;)
干杯