Я хочу обновить 1 атрибут всех объектов в списке. Атрибут, который я хочу обновить, является логическим. Я пытаюсь обновить атрибуты с помощью формы POST. Таким образом, вы можете установить и снять все флажки. Но когда я отправляю форму, я не могу найти хороший и простой способ обновить все атрибуты. С помощью Razor вы можете обновлять объекты, не просматривая все атрибуты. Но я не могу найти способ обновить его.
Вот так выглядит мой объект:
public class Membership
{
public int ID { get; set; }
public int GroupID { get; set; }
public string Name { get; set; }
public int UserCount { get; set; }
public bool UserIsMember { get; set; }
}
Я заполняю список участников некоторыми данными. Затем в представлении я отображаю данные следующим образом:
<form asp-page-handler="UpdateMembership" method="post">
@foreach(Models.Membership membership in Model.MembershipList)
{
<input asp-for="@membership.UserIsMember" />
<input asp-for="@membership.Name" />
<input class="hidden" asp-for="@membership.GroupID" />
<p></p>
}
<input type="submit">
</form>
Я пытался получить такие данные, но затем я все еще использую for-l oop. Я хочу избавиться от for для l oop и использовать Razor, как он предназначен.
foreach (string isChecked in Request.Form["membership.UserIsmember"])
{
AreChecked.Add(bool.Parse(isChecked));
//AreChecked is a list of booleans
}
Как эффективно обновить атрибут UserIsmember для всех объектов? Может я что-то упустил? Любая помощь приветствуется !!