我有一个cshtml文件,其部分类似于以下代码:
<div id="entries" class="records-table">
@if (Model.Entries != null)
{
foreach (var entry in Model.Entries)
{
@Html.Partia("../Partials/_PartialEntry", entry)
}
}
</div>
在我的_PartialEntry文件中,我的代码类似如下:
<input asp-for="SomeModelValue" />
<div class="@(Model.SomeModelValue == "Special":"hidden":string.Empty)">...</div>
我遇到的问题是对于给定条目,asp-for="SomeModelValue"
和@Model.SomeModelValue
之间的SomeModelValue属性不同。 @Model.SomeModelValue
始终返回上一个条目的SomeModelValue
。我将尝试在下面提供一个示例。
让我说我Model.Entries有以下值:
[{SomeModelValue = "Special", ....},
{SomeModelValue = "SomeOtherValue", ....}
{SomeModelValue = "Special", ....},
{SomeModelValue = "SomeValue", ....},
{SomeModelValue = "Special", ....}]
注意:只是使用懒惰它是C#SomeModelValue是字符串属性的对象列表。
我正在编辑_ParialEntry代码:
<input asp-for="SomeModelValue" />
<div>@Model.SomeModelValue</div>
<div class="@(Model.SomeModelValue == "Special":"hidden":string.Empty)">...</div>
生成的html类似于:
<div id="entries" class="records-table">
...
<input value="Special" />
<div>{Special}</div>
<div {class="hidden"}>...</div>
...
<input value="SomeOtherValue" />
<div>Special{SomeOtherValue}</div>
<div class="hidden"{} >...</div>
...
<input value="Special" />
<div>SomeOtherValue{Expecting:Special}</div>
<div {lass="hidden"}>...</div>
...
<input value="SomeValue" />
<div>Special{SomeValue}</div>
<div class="hidden"{}>...</div>
...
<input value="Special" />
<div>SomeValue{Special}</div>
<div {class="hidden"}>...</div>
...
</div>
我放在{...}中的预期结果其他单词SomeValue {Special}表示我显示了SomeValue,但我希望看到Special。
我希望这可以让你知道我遇到了什么,我似乎不明白为什么会发生任何指针会有所帮助,谢谢你。