[10:07:35 ERR] defaultValue length must be equal to or lower than 256! (Parameter 'defaultValue')
System.ArgumentException: defaultValue length must be equal to or lower than 256! (Parameter 'defaultValue')
at Volo.Abp.Check.Length(String value, String parameterName, Int32 maxLength, Int32 minLength)
at Volo.Abp.SettingManagement.SettingDefinitionRecord..ctor(Guid id, String name, String displayName, String description, String defaultValue, Boolean isVisibleToClients, String providers, Boolean isInherited, Boolean isEncrypted)
at Volo.Abp.SettingManagement.SettingDefinitionSerializer.SerializeAsync(SettingDefinition setting)
at Volo.Abp.SettingManagement.SettingDefinitionSerializer.SerializeAsync(IEnumerable1 settings) at Volo.Abp.SettingManagement.StaticSettingSaver.SaveAsync() at Volo.Abp.SettingManagement.StaticSettingSaver.SaveAsync() at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous(IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapter.ProceedAsync() at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter
1.InterceptAsync(IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at Volo.Abp.SettingManagement.AbpSettingManagementDomainModule.<>c__DisplayClass8_0.<
Hi,
You need additional queries, because entities have no navigation properties
Can you help me write an example? thank you.
: )
Hello, may I ask how to use Include if the extension field is a foreign key? thanks
Hi,
First, use the module entity extension system to add a new property to the
organization
. (I think you have completed this step.)https://docs.abp.io/en/abp/latest/Module-Entity-Extensions#quick-example
Then, use the ef core entity extension system to make the property as a regular property in the entity
To overcome the difficulties described above, ABP Framework entity extension system for the Entity Framework Core that allows you to use the same extra properties API defined above, but store a desired property as a separate field in the database table.
https://docs.abp.io/en/abp/latest/Customizing-Application-Modules-Extending-Entities#entity-extensions-ef-core
Then you need to add and apply migration files:
dotnet ef migrations add add_fullname_to_ou
,dotnet ef database update
Now, the
FullName
is a shadow property, and you can access it in this way.var query = await _organizationUnitRepository.GetQueryableAsync(); query.WhereIf(input.FullName.IsNotNullOrWhiteSpace(), e => EF.Property<string>(e, "FullName") == input.FullName);
Okay, I'll give it a try. The writing style is: e=>EF Property<string>(e, "FullName")==input FullName
Thank you very much!!!
for example:
var query = await _organizationUnitRepository.GetQueryableAsync();
query.WhereIf(input.FullName.IsNotNullOrWhiteSpace(), e => e.FullName.Contains(input.FullName));
FullName is an extended field
There is no defined FullName field in OrganizationUnit, is FullName an extension field of OrganizationUnit? Do you understand?
Hi,
You can use
GetProperty
&SetProperty
Extension Methods for getting or setting the extra property value, this is what you expect, right? Correct me if I miss understood you.
GetProperty&SetProperty I know, do I want to use extended fields to query records in the database that meet the criteria? Do you understand?
Do I need to redefine entity classes in the Domain layer?
Hi,
Please check https://docs.abp.io/en/abp/latest/Entity-Framework-Core#extra-properties-object-extension-manager and https://docs.abp.io/en/abp/latest/Customizing-Application-Modules-Extending-Entities
Also have look to this https://docs.abp.io/en/abp/latest/Module-Entity-Extensions
regards,
Hi,
Please check https://docs.abp.io/en/abp/latest/Entity-Framework-Core#extra-properties-object-extension-manager and https://docs.abp.io/en/abp/latest/Customizing-Application-Modules-Extending-Entities
Also have look to this https://docs.abp.io/en/abp/latest/Module-Entity-Extensions
regards,
for example:
var query = await _organizationUnitRepository.GetQueryableAsync();
query.WhereIf(input.FullName.IsNotNullOrWhiteSpace(), e => e.FullName.Contains(input.FullName));
FullName is an extended field