Skip to content
This repository was archived by the owner on Feb 1, 2025. It is now read-only.

Commit 6f0227d

Browse files
authored
Merge pull request #182 from linq2db/version6
Release 6.3.0
2 parents e63148c + 1ab12e5 commit 6f0227d

File tree

8 files changed

+47
-7
lines changed

8 files changed

+47
-7
lines changed

Build/linq2db.Default.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<Project>
22
<PropertyGroup>
3-
<Version>6.2.0</Version>
3+
<Version>6.3.0</Version>
44

55
<Authors>Svyatoslav Danyliv, Igor Tkachev, Dmitry Lukashenko, Ilya Chudin</Authors>
66
<Product>Linq to DB</Product>

Directory.Packages.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
<PackageVersion Include="NUnit" Version="3.13.2" />
66
<PackageVersion Include="FluentAssertions" Version="5.10.3" />
77

8-
<PackageVersion Include="linq2db" Version="3.4.4" />
9-
<PackageVersion Include="linq2db.Tools" Version="3.4.4" />
8+
<PackageVersion Include="linq2db" Version="3.4.5" />
9+
<PackageVersion Include="linq2db.Tools" Version="3.4.5" />
1010

1111
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="1.0.0" />
1212

NuGet/linq2db.EntityFrameworkCore.nuspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<dependencies>
1717
<group targetFramework="net6.0">
1818
<dependency id="Microsoft.EntityFrameworkCore.Relational" version="6.0.0-preview.6.21352.1" />
19-
<dependency id="linq2db" version="3.4.3" />
19+
<dependency id="linq2db" version="3.4.5" />
2020
</group>
2121
</dependencies>
2222
</metadata>

Source/LinqToDB.EntityFrameworkCore/EFCoreMetadataReader.cs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -495,12 +495,23 @@ public override int GetHashCode()
495495
return found;
496496
}
497497

498+
private static PropertyInfo GetPropertyInfoForType(Type type, PropertyInfo propInfo)
499+
{
500+
if (propInfo.DeclaringType == type)
501+
return propInfo;
502+
503+
var found = type.GetProperties()
504+
.FirstOrDefault(x => x.Module == propInfo.Module && x.MetadataToken == propInfo.MetadataToken);
505+
506+
return found ?? propInfo;
507+
}
508+
498509
private Sql.ExpressionAttribute? GetDbFunctionFromProperty(Type type, PropertyInfo propInfo)
499510
{
500511
if (_dependencies == null || _model == null)
501512
return null;
502513

503-
propInfo = (PropertyInfo?) type.GetMemberEx(propInfo) ?? propInfo;
514+
propInfo = GetPropertyInfoForType(type, propInfo);
504515

505516
var found = _calculatedExtensions.GetOrAdd(propInfo, mi =>
506517
{

Tests/LinqToDB.EntityFrameworkCore.BaseTests/ForMappingTestsBase.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,5 +108,14 @@ public virtual async Task TestUIntTable()
108108
var item = await context.UIntTable.FirstOrDefaultAsyncLinqToDB(e => e.Field64 == field64);
109109
}
110110

111+
[Test]
112+
public virtual void TestAmbiguousProperties()
113+
{
114+
using var context = CreateContext();
115+
116+
FluentActions.Awaiting(() => context.WithDuplicateProperties.Where(x => x.Value == 1)
117+
.ToArrayAsyncLinqToDB()).Should().NotThrow();
118+
}
119+
111120
}
112121
}

Tests/LinqToDB.EntityFrameworkCore.BaseTests/Models/ForMapping/ForMappingContextBase.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,7 @@ protected ForMappingContextBase(DbContextOptions options) : base(options)
1212
public DbSet<NoIdentity> NoIdentity { get; set; } = null!;
1313
public DbSet<UIntTable> UIntTable { get; set; } = null!;
1414
public DbSet<StringTypes> StringTypes { get; set; } = null!;
15+
16+
public DbSet<WithDuplicateProperties> WithDuplicateProperties { get; set; } = null!;
1517
}
1618
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
using System.ComponentModel.DataAnnotations;
2+
3+
namespace LinqToDB.EntityFrameworkCore.BaseTests.Models.ForMapping
4+
{
5+
6+
public class WithDuplicatePropertiesBase
7+
{
8+
[Key]
9+
public int Id { get; set; }
10+
11+
public virtual string? Value { get; set; }
12+
}
13+
14+
public class WithDuplicateProperties : WithDuplicatePropertiesBase
15+
{
16+
public new int? Value { get; set; }
17+
}
18+
}

azure-pipelines.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
variables:
22
solution: 'linq2db.EFCore.sln'
33
build_configuration: 'Release'
4-
assemblyVersion: 6.2.0
5-
nugetVersion: 6.2.0
4+
assemblyVersion: 6.3.0
5+
nugetVersion: 6.3.0
66
artifact_nugets: 'nugets'
77

88
# build on commits to important branches (master + release branches):

0 commit comments

Comments
 (0)