Skip to content

Commit c767a2c

Browse files
authored
Merge pull request #539 from JoostKingma/master
Updated support for ReverseNavigation. Thanks to JoostKingma.
2 parents eb7ad55 + 8fd714d commit c767a2c

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

EntityFramework.Reverse.POCO.Generator/EF.Reverse.POCO.Core.ttinclude

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3237,6 +3237,7 @@ SELECT SERVERPROPERTY('Edition') AS Edition,
32373237
public override void ProcessForeignKeys(List<ForeignKey> fkList, Tables tables, bool checkForFkNameClashes)
32383238
{
32393239
var constraints = fkList.Select(x => x.FkSchema + "." + x.ConstraintName).Distinct();
3240+
var doubleForeignTableRefcontraints = fkList.GroupBy(x => new { x.FkTableName, x.PkTableName }).Where(g => g.Count() > 1).SelectMany(g => g.Select(x => string.Format("{0}.{1}", x.FkSchema, x.ConstraintName))).Distinct();
32403241
foreach (var constraint in constraints)
32413242
{
32423243
var foreignKeys = fkList
@@ -3362,7 +3363,7 @@ SELECT SERVERPROPERTY('Edition') AS Edition,
33623363
mapKey = string.Format("\"{0}\"", firstFKCol.col.Name);
33633364
}
33643365

3365-
if (!Settings.UseDataAnnotations)
3366+
if (!Settings.UseDataAnnotations || ( doubleForeignTableRefcontraints.Any(x => x.Equals(constraint, StringComparison.InvariantCultureIgnoreCase)) && relationship == Relationship.ManyToOne))
33663367
{
33673368
List<Column> fkCols2 = fkCols.Select( c => c.col ).ToList();
33683369

@@ -4513,4 +4514,4 @@ SELECT SERVERPROPERTY('Edition') AS Edition,
45134514
}
45144515
}
45154516

4516-
#>
4517+
#>

0 commit comments

Comments
 (0)