Browse Source

Avoid using array index in taghelper expressions

pull/6753/head
liangshiwei 6 years ago
parent
commit
02cfd822e7
  1. 30
      modules/account/src/Volo.Abp.Account.Web.IdentityServer/Pages/Consent.cshtml
  2. 14
      modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/FeatureManagementModal.cshtml
  3. 5
      modules/identity/src/Volo.Abp.Identity.Web/Pages/Identity/Users/CreateModal.cshtml
  4. 7
      modules/identity/src/Volo.Abp.Identity.Web/Pages/Identity/Users/EditModal.cshtml

30
modules/account/src/Volo.Abp.Account.Web.IdentityServer/Pages/Consent.cshtml

@ -32,22 +32,23 @@
<ul class="list-group"> <ul class="list-group">
@for (var i = 0; i < Model.ConsentInput.IdentityScopes.Count; i++) @for (var i = 0; i < Model.ConsentInput.IdentityScopes.Count; i++)
{ {
var identityScope = Model.ConsentInput.IdentityScopes[i];
<li class="list-group-item"> <li class="list-group-item">
<div class="form-check"> <div class="form-check">
<label asp-for="@Model.ConsentInput.IdentityScopes[i].Checked" class="form-check-label"> <label asp-for="@identityScope.Checked" for="ConsentInput_IdentityScopes_@(i)__Checked" class="form-check-label">
<input asp-for="@Model.ConsentInput.IdentityScopes[i].Checked" class="form-check-input" /> <input name="ConsentInput.IdentityScopes[@i].Checked" id="ConsentInput_IdentityScopes_@(i)__Checked" asp-for="@identityScope.Checked" class="form-check-input" />
@Model.ConsentInput.IdentityScopes[i].DisplayName @identityScope.DisplayName
@if (Model.ConsentInput.IdentityScopes[i].Required) @if (identityScope.Required)
{ {
<span><em>(required)</em></span> <span><em>(required)</em></span>
} }
</label> </label>
</div> </div>
<input asp-for="@Model.ConsentInput.IdentityScopes[i].Name" type="hidden" /> @* TODO: Use attributes on the view model instead of using hidden here *@ <input name="ConsentInput.IdentityScopes[@i].Name" id="ConsentInput_IdentityScopes_@(i)Name" asp-for="@identityScope.Name" type="hidden" /> @* TODO: Use attributes on the view model instead of using hidden here *@
@if (Model.ConsentInput.IdentityScopes[i].Description != null) @if (identityScope.Description != null)
{ {
<div class="consent-description"> <div class="consent-description">
@Model.ConsentInput.IdentityScopes[i].Description @identityScope.Description
</div> </div>
} }
</li> </li>
@ -62,22 +63,23 @@
<ul class="list-group"> <ul class="list-group">
@for (var i = 0; i < Model.ConsentInput.ApiScopes.Count; i++) @for (var i = 0; i < Model.ConsentInput.ApiScopes.Count; i++)
{ {
var apiScope = Model.ConsentInput.ApiScopes[i];
<li class="list-group-item"> <li class="list-group-item">
<div class="form-check"> <div class="form-check">
<label asp-for="@Model.ConsentInput.ApiScopes[i].Checked" class="form-check-label"> <label asp-for="@apiScope.Checked" for="ConsentInput_ApiScopes_@(i)__Checked" class="form-check-label">
<input asp-for="@Model.ConsentInput.ApiScopes[i].Checked" class="form-check-input" disabled="@Model.ConsentInput.ApiScopes[i].Required" /> <input name="ConsentInput.ApiScopes[@i].Checked" id="ConsentInput_ApiScopes_@(i)__Checked" asp-for="@apiScope.Checked" class="form-check-input" disabled="@apiScope.Required" />
@Model.ConsentInput.ApiScopes[i].DisplayName @apiScope.DisplayName
@if (Model.ConsentInput.ApiScopes[i].Required) @if (apiScope.Required)
{ {
<span><em>(required)</em></span> <span><em>(required)</em></span>
} }
</label> </label>
</div> </div>
<input asp-for="@Model.ConsentInput.ApiScopes[i].Name" type="hidden" /> @* TODO: Use attributes on the view model instead of using hidden here *@ <input name="ConsentInput.ApiScopes[@i].Name" id="ConsentInput_ApiScopes_@(i)Name" asp-for="@apiScope.Name" type="hidden" /> @* TODO: Use attributes on the view model instead of using hidden here *@
@if (Model.ConsentInput.ApiScopes[i].Description != null) @if (apiScope.Description != null)
{ {
<div class="consent-description"> <div class="consent-description">
@Model.ConsentInput.ApiScopes[i].Description @apiScope.Description
</div> </div>
} }
</li> </li>

14
modules/feature-management/src/Volo.Abp.FeatureManagement.Web/Pages/FeatureManagement/FeatureManagementModal.cshtml

@ -32,14 +32,15 @@
<abp-tabs name="FeaturesTabs" tab-style="PillVertical" vertical-header-size="_4" class="custom-scroll-container"> <abp-tabs name="FeaturesTabs" tab-style="PillVertical" vertical-header-size="_4" class="custom-scroll-container">
@for (var i = 0; i < featureGroups.Count; i++) @for (var i = 0; i < featureGroups.Count; i++)
{ {
<abp-tab title="@featureGroups[i].DisplayName" name="v-pills-tab-@featureGroups[i].GetNormalizedGroupName()"> var featureGroup = featureGroups[i];
<h4>@featureGroups[i].DisplayName</h4> <abp-tab title="@featureGroup.DisplayName" name="v-pills-tab-@featureGroup.GetNormalizedGroupName()">
<h4>@featureGroup.DisplayName</h4>
<hr class="mt-2 mb-3"/> <hr class="mt-2 mb-3"/>
<div class="custom-scroll-content"> <div class="custom-scroll-content">
<div class="pl-1 pt-1"> <div class="pl-1 pt-1">
@for (var j = 0; j < featureGroups[i].Features.Count; j++) @for (var j = 0; j < featureGroup.Features.Count; j++)
{ {
var feature = featureGroups[i].Features[j]; var feature = featureGroup.Features[j];
var disabled = Model.IsDisabled(feature.Provider.Name); var disabled = Model.IsDisabled(feature.Provider.Name);
<div class="mt-2"> <div class="mt-2">
@ -48,7 +49,7 @@
@if (feature.ValueType is ToggleStringValueType) @if (feature.ValueType is ToggleStringValueType)
{ {
<abp-input asp-for="@featureGroups[i].Features[j].Value" <abp-input asp-for="@feature.Value"
type="checkbox" type="checkbox"
name="FeatureGroups[@i].Features[@j].BoolValue" name="FeatureGroups[@i].Features[@j].BoolValue"
label="@feature.DisplayName" label="@feature.DisplayName"
@ -67,8 +68,9 @@
type = "number"; type = "number";
} }
<abp-input asp-for="@featureGroups[i].Features[j].Value" <abp-input asp-for="@feature.Value"
label="@feature.DisplayName" label="@feature.DisplayName"
name="featureGroups[@i].Features[@j].Value"
disabled="@disabled" disabled="@disabled"
type="@type" type="@type"
group-data-feature-name="@feature.Name" group-data-feature-name="@feature.Name"

5
modules/identity/src/Volo.Abp.Identity.Web/Pages/Identity/Users/CreateModal.cshtml

@ -59,8 +59,9 @@
<abp-tab title="@L["Roles"].Value"> <abp-tab title="@L["Roles"].Value">
@for (var i = 0; i < Model.Roles.Length; i++) @for (var i = 0; i < Model.Roles.Length; i++)
{ {
<abp-input asp-for="@Model.Roles[i].IsAssigned" label="@Model.Roles[i].Name" /> var role = Model.Roles[i];
<input asp-for="@Model.Roles[i].Name" /> <abp-input id="Role_@(i)__IsAssigned" name="Roles[@i].IsAssigned" asp-for="@role.IsAssigned" label="@role.Name" />
<input name="Roles[@i].Name" asp-for="@role.Name" />
} }
</abp-tab> </abp-tab>
</abp-tabs> </abp-tabs>

7
modules/identity/src/Volo.Abp.Identity.Web/Pages/Identity/Users/EditModal.cshtml

@ -18,7 +18,7 @@
<abp-modal-header title="@L["Edit"].Value"></abp-modal-header> <abp-modal-header title="@L["Edit"].Value"></abp-modal-header>
<abp-modal-body> <abp-modal-body>
<abp-tabs name="create-user-modal-tabs"> <abp-tabs name="create-user-modal-tabs">
<abp-tab title="@L["UserInformations"].Value"> <abp-tab title="@L["UserInformations"].Value">
<input asp-for="UserInfo.Id" /> <input asp-for="UserInfo.Id" />
<input asp-for="UserInfo.ConcurrencyStamp" /> <input asp-for="UserInfo.ConcurrencyStamp" />
<abp-input asp-for="UserInfo.UserName" /> <abp-input asp-for="UserInfo.UserName" />
@ -60,8 +60,9 @@
<abp-tab title="@L["Roles"].Value"> <abp-tab title="@L["Roles"].Value">
@for (var i = 0; i < Model.Roles.Length; i++) @for (var i = 0; i < Model.Roles.Length; i++)
{ {
<abp-input asp-for="@Model.Roles[i].IsAssigned" label="@Model.Roles[i].Name" /> var role = Model.Roles[i];
<input asp-for="@Model.Roles[i].Name" /> <abp-input id="Role_@(i)__IsAssigned" name="Roles[@i].IsAssigned" asp-for="@role.IsAssigned" label="@role.Name" />
<input name="Roles[@i].Name" asp-for="@role.Name" />
} }
</abp-tab> </abp-tab>
</abp-tabs> </abp-tabs>

Loading…
Cancel
Save