Browse Source

Consider in Entity.equals: Different tenants may have an entity with same Id

pull/272/head
Halil İbrahim Kalkan 9 years ago
parent
commit
f40e85f996
  1. 11
      src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Entity.cs
  2. 2
      test/Volo.Abp.MultiTenancy.Application.Tests/Volo/Abp/MultiTenancy/AbpMultiTenancyApplicationTestBase.cs

11
src/Volo.Abp.Ddd/Volo/Abp/Domain/Entities/Entity.cs

@ -1,4 +1,6 @@
using System.Reflection; using System;
using System.Reflection;
using Volo.Abp.MultiTenancy;
namespace Volo.Abp.Domain.Entities namespace Volo.Abp.Domain.Entities
{ {
@ -47,6 +49,13 @@ namespace Volo.Abp.Domain.Entities
return false; return false;
} }
//Different tenants may have an entity with same Id.
if (this is IMultiTenant && other is IMultiTenant &&
this.As<IMultiTenant>().TenantId != other.As<IMultiTenant>().TenantId)
{
return false;
}
return Id.Equals(other.Id); return Id.Equals(other.Id);
} }

2
test/Volo.Abp.MultiTenancy.Application.Tests/Volo/Abp/MultiTenancy/AbpIdentityApplicationTestBase.cs → test/Volo.Abp.MultiTenancy.Application.Tests/Volo/Abp/MultiTenancy/AbpMultiTenancyApplicationTestBase.cs

@ -3,7 +3,7 @@ using Volo.Abp.MultiTenancy.EntityFrameworkCore;
namespace Volo.Abp.MultiTenancy namespace Volo.Abp.MultiTenancy
{ {
public class AbpMultiTenancyApplicationTestBase : AbpIntegratedTest<AbpMultiTenancyApplicationTestModule> public abstract class AbpMultiTenancyApplicationTestBase : AbpIntegratedTest<AbpMultiTenancyApplicationTestModule>
{ {
protected override void SetAbpApplicationCreationOptions(AbpApplicationCreationOptions options) protected override void SetAbpApplicationCreationOptions(AbpApplicationCreationOptions options)
{ {
Loading…
Cancel
Save