【发布时间】:2021-06-21 07:11:02
【问题描述】:
我想知道是否有一种方法可以从我拥有的类中获取字符串值,然后将这些字符串值用作 Razor 页面上 asp-for 值的插入?我的示例将有助于解释我正在尝试做的事情以及它是否可能。
我有一个像下面这样的类,它只包含星期几的名称......然后我希望能够动态使用星期的名称来构建实际 var/property 的 asp-for 值名称.. 就像在 asp-for="@(Day)StartTime" 中一样,它实际上是名为 SaturdayStartTime、SundayStartTime 等的代码后面的 var ......然后对于 @SpanHours 同样适用,MyObject 有一个属性是 MyObject.SaturdaySpanHours , MyObject.SundaySpanHours 等...所以基本上只是希望能够像我在下面所做的那样进行 foreach ,但这当然行不通。是否有另一种方法可以将值动态插入到 asp-for 中?谢谢
public class Days
{
[BindProperty]
public static List<string> DaysList { get; set; } = new List<string>
{
new string("Saturday"),
new string("Sunday"),
new string("Monday"),
new string("Tuesday"),
new string("Wednesday"),
new string("Thursday"),
new string("Friday")
};
}
<div>
@{
foreach (string Day in Days.DaysList)
{
string SpanHours = "MyObject." + Day + "SpanHours";
<input type="time" value="@Model.MyObject.@(Day)StartTime.ToString("HH:mm")" asp-for="@(Day)StartTime" />
<input asp-for="@SpanHours" class="form-control" value=@Model.MyObject.@(Day)SpanHours />
}
}
</div>
【问题讨论】:
标签: asp.net-core razor razor-pages