源错误:第22行:@ Html.TextBoxFor(model => model.DailyCurrencyRates ___ BuyingCurrency,新的{@id =“ test”,@class =“ form-control”})
我在这个问题上停留了几天,无法解决此错误。我只想使用父类的项渲染局部视图。以下是我的代码:如果需要,请询问更多信息。
控制器
public ActionResult AddRecord(int index)
{
return PartialView("_AddItem", new ForexItem { Index = index});
}
父视图
@foreach (ForexItem item in Model.ForexItems)
{
Html.RenderPartial("_AddItem", item);
}
局部视图
@model F.Models.Entities.ForexItem
@Html.TextBoxFor(model => model.DailyCurrencyRates___BuyingCurrency, new { @id = "test", @class = "form-control" })
型号
public partial class ForexItem
{
public int ID { get; set; }
[NotMapped]
[StringLength(1000)]
[Display(Name = "Buying")]
public string DailyCurrencyRates___BuyingCurrency { get; set; }
[NotMapped]
public int Index { get; set; }
}
答案 0 :(得分:1)
当我将模型属性名称中的下划线的数量从1增加到2时,我得到了同样模糊的,模糊的错误。请注意,LabelFor Helper的错误并没有直接在TextBoxFor helper之前发生,而是在TextBoxFor中发生帮手,和你一样。 (我注意到您的媒体资源名称(“ DailyCurrencyRates___BuyingCurrency”)有3个下划线。)然后,当我从媒体资源名称中删除了多余的下划线时,它就消失了。好像有了额外的下划线,Razor找不到属性名称,因此它只是搜索(通用)“名称”,也找不到。
答案 1 :(得分:0)
这可能是一个错字,但是在我看来您应该将Model.ForexItems
更改为Model.ForexItem
-否。根据您提交的代码。
…或也许只使用Model
,因为您已经将ForexItem放入其中了?
父视图
@foreach (ForexItem item in Model)
{
Html.RenderPartial("_AddItem", item);
}