You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
2.6 KiB
74 lines
2.6 KiB
1 year ago
|
using System.ComponentModel.DataAnnotations;
|
||
|
using Volo.Abp.Identity;
|
||
|
using Volo.Abp.ObjectExtending;
|
||
|
using Volo.Abp.Threading;
|
||
|
|
||
|
namespace WinIn.FasterZ.AuthSiteCenter;
|
||
|
|
||
|
public static class AuthSiteCenterModuleExtensionConfigurator
|
||
|
{
|
||
|
private static readonly OneTimeRunner OneTimeRunner = new OneTimeRunner();
|
||
|
|
||
|
public static void Configure()
|
||
|
{
|
||
|
OneTimeRunner.Run(() =>
|
||
|
{
|
||
|
ConfigureExistingProperties();
|
||
|
ConfigureExtraProperties();
|
||
|
});
|
||
|
}
|
||
|
|
||
|
private static void ConfigureExistingProperties()
|
||
|
{
|
||
|
/* You can change max lengths for properties of the
|
||
|
* entities defined in the modules used by your application.
|
||
|
*
|
||
|
* Example: Change user and role name max lengths
|
||
|
|
||
|
IdentityUserConsts.MaxNameLength = 99;
|
||
|
IdentityRoleConsts.MaxNameLength = 99;
|
||
|
|
||
|
* Notice: It is not suggested to change property lengths
|
||
|
* unless you really need it. Go with the standard values wherever possible.
|
||
|
*
|
||
|
* If you are using EF Core, you will need to run the add-migration command after your changes.
|
||
|
*/
|
||
|
}
|
||
|
|
||
|
private static void ConfigureExtraProperties()
|
||
|
{
|
||
|
/* You can configure extra properties for the
|
||
|
* entities defined in the modules used by your application.
|
||
|
*
|
||
|
* This class can be used to define these extra properties
|
||
|
* with a high level, easy to use API.
|
||
|
*
|
||
|
* Example: Add a new property to the user entity of the identity module
|
||
|
|
||
|
ObjectExtensionManager.Instance.Modules()
|
||
|
.ConfigureIdentity(identity =>
|
||
|
{
|
||
|
identity.ConfigureUser(user =>
|
||
|
{
|
||
|
user.AddOrUpdateProperty<string>( //property type: string
|
||
|
"SocialSecurityNumber", //property name
|
||
|
property =>
|
||
|
{
|
||
|
//validation rules
|
||
|
property.Attributes.Add(new RequiredAttribute());
|
||
|
property.Attributes.Add(new StringLengthAttribute(64) {MinimumLength = 4});
|
||
|
|
||
|
property.Configuration[IdentityModuleExtensionConsts.ConfigurationNames.AllowUserToEdit] = true;
|
||
|
|
||
|
//...other configurations for this property
|
||
|
}
|
||
|
);
|
||
|
});
|
||
|
});
|
||
|
|
||
|
* See the documentation for more:
|
||
|
* https://docs.abp.io/en/abp/latest/Module-Entity-Extensions
|
||
|
*/
|
||
|
}
|
||
|
}
|