diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/ConsentInputModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/ConsentInputModel.cs index 633f37b89..739d833aa 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/ConsentInputModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/ConsentInputModel.cs @@ -2,11 +2,11 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class ConsentInputModel + public record ConsentInputModel { - public string Button { get; set; } - public IEnumerable ScopesConsented { get; set; } - public bool RememberConsent { get; set; } - public string ReturnUrl { get; set; } + public string Button { get; init; } + public IEnumerable ScopesConsented { get; init; } + public bool RememberConsent { get; init; } + public string ReturnUrl { get; init; } } } \ No newline at end of file diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/ConsentViewModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/ConsentViewModel.cs index c010f636f..10dc8548a 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/ConsentViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/ConsentViewModel.cs @@ -1,12 +1,10 @@ - - -using System.Collections.Generic; +using System.Collections.Generic; using System.Linq; using IdentityServer4.Models; namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class ConsentViewModel : ConsentInputModel + public record ConsentViewModel : ConsentInputModel { public ConsentViewModel(ConsentInputModel model, string returnUrl, AuthorizationRequest request, Client client, Resources resources) { @@ -24,16 +22,16 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewMo ResourceScopes = resources.ApiResources.SelectMany(x => x.Scopes).Select(x => new ScopeViewModel(x, ScopesConsented.Contains(x.Name) || model == null)).ToArray(); } - public string ClientName { get; set; } - public string ClientUrl { get; set; } - public string ClientLogoUrl { get; set; } - public bool AllowRememberConsent { get; set; } + public string ClientName { get; init; } + public string ClientUrl { get; init; } + public string ClientLogoUrl { get; init; } + public bool AllowRememberConsent { get; init; } - public IEnumerable IdentityScopes { get; set; } - public IEnumerable ResourceScopes { get; set; } + public IEnumerable IdentityScopes { get; init; } + public IEnumerable ResourceScopes { get; init; } } - public class ScopeViewModel + public record ScopeViewModel { public ScopeViewModel(Scope scope, bool check) { @@ -55,11 +53,11 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewMo Checked = check || identity.Required; } - public string Name { get; set; } - public string DisplayName { get; set; } - public string Description { get; set; } - public bool Emphasize { get; set; } - public bool Required { get; set; } - public bool Checked { get; set; } + public string Name { get; init; } + public string DisplayName { get; init; } + public string Description { get; init; } + public bool Emphasize { get; init; } + public bool Required { get; init; } + public bool Checked { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/ForgotPasswordViewModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/ForgotPasswordViewModel.cs index f5dd3ab61..ad661c65f 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/ForgotPasswordViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/ForgotPasswordViewModel.cs @@ -2,10 +2,10 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class ForgotPasswordViewModel + public record ForgotPasswordViewModel { [Required] [EmailAddress] - public string Email { get; set; } + public string Email { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/LoggedOutViewModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/LoggedOutViewModel.cs index bd7f7c7bb..eff853f9d 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/LoggedOutViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/LoggedOutViewModel.cs @@ -1,9 +1,9 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class LoggedOutViewModel + public record LoggedOutViewModel { - public string PostLogoutRedirectUri { get; set; } - public string ClientName { get; set; } - public string SignOutIframeUrl { get; set; } + public string PostLogoutRedirectUri { get; init; } + public string ClientName { get; init; } + public string SignOutIframeUrl { get; init; } } } \ No newline at end of file diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/LoginViewModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/LoginViewModel.cs index 3b1926cc2..97ef19aba 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/LoginViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/LoginViewModel.cs @@ -2,7 +2,7 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class LoginViewModel + public record LoginViewModel { [Required] [EmailAddress] diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/LogoutViewModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/LogoutViewModel.cs index d81dcd6ac..f9d23c629 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/LogoutViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/LogoutViewModel.cs @@ -1,6 +1,6 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class LogoutViewModel + public record LogoutViewModel { public string LogoutId { get; set; } } diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/RegisterViewModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/RegisterViewModel.cs index df97bb965..00fc05d4b 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/RegisterViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/RegisterViewModel.cs @@ -2,24 +2,24 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class RegisterViewModel + public record RegisterViewModel { [Required] [EmailAddress] [Display(Name = "Email")] - public string Email { get; set; } + public string Email { get; init; } [Required] [StringLength(100, ErrorMessage = "The {0} must be at least {2} and at max {1} characters long.", MinimumLength = 6)] [DataType(DataType.Password)] [Display(Name = "Password")] - public string Password { get; set; } + public string Password { get; init; } [DataType(DataType.Password)] [Display(Name = "Confirm password")] [Compare("Password", ErrorMessage = "The password and confirmation password do not match.")] - public string ConfirmPassword { get; set; } + public string ConfirmPassword { get; init; } - public ApplicationUser User { get; set; } + public ApplicationUser User { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/ResetPasswordViewModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/ResetPasswordViewModel.cs index 57edc44c3..50c5b585f 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/ResetPasswordViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/ResetPasswordViewModel.cs @@ -2,22 +2,22 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class ResetPasswordViewModel + public record ResetPasswordViewModel { [Required] [EmailAddress] - public string Email { get; set; } + public string Email { get; init; } [Required] [StringLength(100, ErrorMessage = "The {0} must be at least {2} and at max {1} characters long.", MinimumLength = 6)] [DataType(DataType.Password)] - public string Password { get; set; } + public string Password { get; init; } [DataType(DataType.Password)] [Display(Name = "Confirm password")] [Compare("Password", ErrorMessage = "The password and confirmation password do not match.")] - public string ConfirmPassword { get; set; } + public string ConfirmPassword { get; init; } - public string Code { get; set; } + public string Code { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/SendCodeViewModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/SendCodeViewModel.cs index a6f316c48..35429e9e5 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/SendCodeViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/SendCodeViewModel.cs @@ -3,14 +3,14 @@ using System.Collections.Generic; namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class SendCodeViewModel + public record SendCodeViewModel { - public string SelectedProvider { get; set; } + public string SelectedProvider { get; init; } - public ICollection Providers { get; set; } + public ICollection Providers { get; init; } - public string ReturnUrl { get; set; } + public string ReturnUrl { get; init; } - public bool RememberMe { get; set; } + public bool RememberMe { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/AccountViewModels/VerifyCodeViewModel.cs b/src/Services/Identity/Identity.API/Models/AccountViewModels/VerifyCodeViewModel.cs index 83d075f9c..e54d6c05b 100644 --- a/src/Services/Identity/Identity.API/Models/AccountViewModels/VerifyCodeViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/AccountViewModels/VerifyCodeViewModel.cs @@ -2,20 +2,20 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.AccountViewModels { - public class VerifyCodeViewModel + public record VerifyCodeViewModel { [Required] - public string Provider { get; set; } + public string Provider { get; init; } [Required] - public string Code { get; set; } + public string Code { get; init; } - public string ReturnUrl { get; set; } + public string ReturnUrl { get; init; } [Display(Name = "Remember this browser?")] - public bool RememberBrowser { get; set; } + public bool RememberBrowser { get; init; } [Display(Name = "Remember me?")] - public bool RememberMe { get; set; } + public bool RememberMe { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/ErrorViewModel.cs b/src/Services/Identity/Identity.API/Models/ErrorViewModel.cs index b101bca7a..a327e7b08 100644 --- a/src/Services/Identity/Identity.API/Models/ErrorViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/ErrorViewModel.cs @@ -6,7 +6,7 @@ using IdentityServer4.Models; namespace Microsoft.eShopOnContainers.Services.Identity.API.Models { - public class ErrorViewModel + public record ErrorViewModel { public ErrorMessage Error { get; set; } } diff --git a/src/Services/Identity/Identity.API/Models/ManageViewModels/AddPhoneNumberViewModel.cs b/src/Services/Identity/Identity.API/Models/ManageViewModels/AddPhoneNumberViewModel.cs index 2a1cc49d0..878b0440b 100644 --- a/src/Services/Identity/Identity.API/Models/ManageViewModels/AddPhoneNumberViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/ManageViewModels/AddPhoneNumberViewModel.cs @@ -2,11 +2,11 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.ManageViewModels { - public class AddPhoneNumberViewModel + public record AddPhoneNumberViewModel { [Required] [Phone] [Display(Name = "Phone number")] - public string PhoneNumber { get; set; } + public string PhoneNumber { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/ManageViewModels/ChangePasswordViewModel.cs b/src/Services/Identity/Identity.API/Models/ManageViewModels/ChangePasswordViewModel.cs index fa9193c38..65521429f 100644 --- a/src/Services/Identity/Identity.API/Models/ManageViewModels/ChangePasswordViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/ManageViewModels/ChangePasswordViewModel.cs @@ -2,22 +2,22 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.ManageViewModels { - public class ChangePasswordViewModel + public record ChangePasswordViewModel { [Required] [DataType(DataType.Password)] [Display(Name = "Current password")] - public string OldPassword { get; set; } + public string OldPassword { get; init; } [Required] [StringLength(100, ErrorMessage = "The {0} must be at least {2} and at max {1} characters long.", MinimumLength = 6)] [DataType(DataType.Password)] [Display(Name = "New password")] - public string NewPassword { get; set; } + public string NewPassword { get; init; } [DataType(DataType.Password)] [Display(Name = "Confirm new password")] [Compare("NewPassword", ErrorMessage = "The new password and confirmation password do not match.")] - public string ConfirmPassword { get; set; } + public string ConfirmPassword { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/ManageViewModels/ConfigureTwoFactorViewModel.cs b/src/Services/Identity/Identity.API/Models/ManageViewModels/ConfigureTwoFactorViewModel.cs index 15cf719fa..a0a7f30bf 100644 --- a/src/Services/Identity/Identity.API/Models/ManageViewModels/ConfigureTwoFactorViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/ManageViewModels/ConfigureTwoFactorViewModel.cs @@ -3,10 +3,10 @@ using System.Collections.Generic; namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.ManageViewModels { - public class ConfigureTwoFactorViewModel + public record ConfigureTwoFactorViewModel { - public string SelectedProvider { get; set; } + public string SelectedProvider { get; init; } - public ICollection Providers { get; set; } + public ICollection Providers { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/ManageViewModels/FactorViewModel.cs b/src/Services/Identity/Identity.API/Models/ManageViewModels/FactorViewModel.cs index 4a6d4497f..b9e6e5d5b 100644 --- a/src/Services/Identity/Identity.API/Models/ManageViewModels/FactorViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/ManageViewModels/FactorViewModel.cs @@ -1,7 +1,7 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.ManageViewModels { - public class FactorViewModel + public record FactorViewModel { - public string Purpose { get; set; } + public string Purpose { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/ManageViewModels/IndexViewModel.cs b/src/Services/Identity/Identity.API/Models/ManageViewModels/IndexViewModel.cs index b13bc18e3..8d32c8e69 100644 --- a/src/Services/Identity/Identity.API/Models/ManageViewModels/IndexViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/ManageViewModels/IndexViewModel.cs @@ -3,16 +3,16 @@ using System.Collections.Generic; namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.ManageViewModels { - public class IndexViewModel + public record IndexViewModel { - public bool HasPassword { get; set; } + public bool HasPassword { get; init; } - public IList Logins { get; set; } + public IList Logins { get; init; } - public string PhoneNumber { get; set; } + public string PhoneNumber { get; init; } - public bool TwoFactor { get; set; } + public bool TwoFactor { get; init; } - public bool BrowserRemembered { get; set; } + public bool BrowserRemembered { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/ManageViewModels/SetPasswordViewModel.cs b/src/Services/Identity/Identity.API/Models/ManageViewModels/SetPasswordViewModel.cs index 9d0711b08..e2f048054 100644 --- a/src/Services/Identity/Identity.API/Models/ManageViewModels/SetPasswordViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/ManageViewModels/SetPasswordViewModel.cs @@ -2,17 +2,17 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.ManageViewModels { - public class SetPasswordViewModel + public record SetPasswordViewModel { [Required] [StringLength(100, ErrorMessage = "The {0} must be at least {2} and at max {1} characters long.", MinimumLength = 6)] [DataType(DataType.Password)] [Display(Name = "New password")] - public string NewPassword { get; set; } + public string NewPassword { get; init; } [DataType(DataType.Password)] [Display(Name = "Confirm new password")] [Compare("NewPassword", ErrorMessage = "The new password and confirmation password do not match.")] - public string ConfirmPassword { get; set; } + public string ConfirmPassword { get; init; } } } diff --git a/src/Services/Identity/Identity.API/Models/ManageViewModels/VerifyPhoneNumberViewModel.cs b/src/Services/Identity/Identity.API/Models/ManageViewModels/VerifyPhoneNumberViewModel.cs index fccf56e4e..a3c8e5c65 100644 --- a/src/Services/Identity/Identity.API/Models/ManageViewModels/VerifyPhoneNumberViewModel.cs +++ b/src/Services/Identity/Identity.API/Models/ManageViewModels/VerifyPhoneNumberViewModel.cs @@ -2,14 +2,14 @@ namespace Microsoft.eShopOnContainers.Services.Identity.API.Models.ManageViewModels { - public class VerifyPhoneNumberViewModel + public record VerifyPhoneNumberViewModel { [Required] - public string Code { get; set; } + public string Code { get; init; } [Required] [Phone] [Display(Name = "Phone number")] - public string PhoneNumber { get; set; } + public string PhoneNumber { get; init; } } }