I am writing to ask about searched implemented in default modules like saas, administration. When using Mongodb they are all case sensitive even for Contains comparison . Which is pretty annoying. When you searching for tenants or user you want searches to be case insensitive as you searching for some partial key and ignore case should be implemented. Have you guys have any work currently pending regrading that. Or if not can you point me to right direction how to implement is globally. This is source code I am referring to which does case sensitive search
public virtual async Task<List<Tenant>> GetListAsync(
string sorting = null,
int maxResultCount = int.MaxValue,
int skipCount = 0,
string filter = null,
bool includeDetails = false,
Guid? editionId = null,
DateTime? expirationDateMin = null,
DateTime? expirationDateMax = null,
TenantActivationState? tenantActivationState = null,
CancellationToken cancellationToken = default)
{
return await (await GetMongoQueryableAsync(cancellationToken))
.WhereIf<Tenant, IMongoQueryable<Tenant>>(
!filter.IsNullOrWhiteSpace(),
u =>
u.Name.Contains(filter)
)
.WhereIf(editionId.HasValue, tenant => tenant.EditionId == editionId.Value)
.WhereIf(expirationDateMin.HasValue, tenant => tenant.EditionEndDateUtc >= expirationDateMin.Value)
.WhereIf(expirationDateMax.HasValue, tenant => tenant.EditionEndDateUtc <= expirationDateMax.Value)
.WhereIf(tenantActivationState.HasValue, tenant => tenant.ActivationState == tenantActivationState.Value)
.OrderBy(sorting.IsNullOrWhiteSpace() ? nameof(Tenant.Name) : sorting)
.As<IMongoQueryable<Tenant>>()
.PageBy<Tenant, IMongoQueryable<Tenant>>(skipCount, maxResultCount)
.ToListAsync(GetCancellationToken(cancellationToken));
}
I am talking about existing framework code. It seems like I have to override all framework repository for this fix. Tenants, Users administration modules. Do you have any planned work for this ?
Hello ,
Please check this https://stackoverflow.com/questions/4458950/mongodb-and-c-case-insensitive-search try to add ToLower at both side (frontend and backend).
Thank you.
This solution does not work with Mongodb Linq.
I have tried every way out there from your support question to find source code for @volo/abp.commercial.ng.ui Module .
Tried this and Abp suite abp add-package Volo.Abp.LeptonXTheme.Pro --old
It does not include abp.commercial.ng.ui code . Can you please provide me an easy way to download that source code
Yes please can you email me. Can you email on ndeol@woolworths.com.au
This I abp implementation when saving Audit Porperty Changes. As in MongoDb Case I am adding custom Entity Change object which Is bigger as its in Sterilized object. But Implementation we currently have Truncate the Value before Audit Information is saved. There is no way to override it either. Can you explain how can I override **EntityPropertyChangeConsts.MaxNewValueLength
** , If not Then Any other way to set the value on NewValue as its protected Set.
[DisableAuditing]
public class EntityPropertyChange : Entity<Guid>, IMultiTenant
{
public virtual Guid? TenantId { get; protected set; }
public virtual Guid EntityChangeId { get; protected set; }
public virtual string NewValue { get; protected set; }
public virtual string OriginalValue { get; protected set; }
public virtual string PropertyName { get; protected set; }
public virtual string PropertyTypeFullName { get; protected set; }
protected EntityPropertyChange()
{
}
public EntityPropertyChange(
IGuidGenerator guidGenerator,
Guid entityChangeId,
EntityPropertyChangeInfo entityChangeInfo,
Guid? tenantId = null)
{
Id = guidGenerator.Create();
TenantId = tenantId;
EntityChangeId = entityChangeId;
**NewValue = entityChangeInfo.NewValue.Truncate(EntityPropertyChangeConsts.MaxNewValueLength);**
OriginalValue = entityChangeInfo.OriginalValue.Truncate(EntityPropertyChangeConsts.MaxOriginalValueLength);
PropertyName = entityChangeInfo.PropertyName.TruncateFromBeginning(EntityPropertyChangeConsts.MaxPropertyNameLength);
PropertyTypeFullName = entityChangeInfo.PropertyTypeFullName.TruncateFromBeginning(EntityPropertyChangeConsts.MaxPropertyTypeFullNameLength);
}
}
Thanks That worked
+1 any ETA on this guys,All deplyment pipelines are also down due to DNS issue for Nuget?
https://community.cloudflare.com/t/how-to-turn-off-are-you-a-human/635902 I can open the same link with Browser but CLI or abp studio login fails for this url with 403 https://account.abp.io/.well-known/openid-configuration