diff --git a/Directory.Packages.props b/Directory.Packages.props index 00dcbff4f..93792cb20 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -1,9 +1,9 @@ - 9.0.0 - 10.0.0 + 9.0.2 + 9.0.2 $(MSExtVersion) - 10.0.0 + 9.0.2 diff --git a/Orm/Xtensive.Orm.Tests/Issues/IssueJira0187_TypeCastInContain.cs b/Orm/Xtensive.Orm.Tests/Issues/IssueJira0187_TypeCastInContain.cs index 2f45ecabf..b4b41436d 100644 --- a/Orm/Xtensive.Orm.Tests/Issues/IssueJira0187_TypeCastInContain.cs +++ b/Orm/Xtensive.Orm.Tests/Issues/IssueJira0187_TypeCastInContain.cs @@ -55,14 +55,14 @@ protected override DomainConfiguration BuildConfiguration() [Test] public void ParentsContainsChildWithImplicitCastTest() { - var parents = GlobalSession.Query.All().ToArray(); + IReadOnlyList parents = GlobalSession.Query.All().ToArray(); var result = GlobalSession.Query.All().Where(child => parents.Contains(child)).ToArray(); } [Test] public void ParentsContainsChildWithExplicitCastTest() { - var parents = GlobalSession.Query.All().ToArray(); + IReadOnlyList parents = GlobalSession.Query.All().ToArray(); var result = GlobalSession.Query.All().Where(child => parents.Contains(child as Parent)).ToArray(); } @@ -76,7 +76,7 @@ public void ChildInParentsTest() [Test] public void ChildContainsParentWithImplicitCast() { - var children = GlobalSession.Query.All().ToArray(); + IReadOnlyList children = GlobalSession.Query.All().ToArray(); var result = GlobalSession.Query.All().Where(a => children.Contains(a.Parent)).ToArray(); } @@ -94,4 +94,4 @@ public void ParentInChildrenTest() var result = GlobalSession.Query.All().Where(a => a.Parent.In(children)).ToArray(); } } -} \ No newline at end of file +} diff --git a/Orm/Xtensive.Orm.Tests/Issues/IssueJira0743_IncludeDoesNotWorkWithSubqueries.cs b/Orm/Xtensive.Orm.Tests/Issues/IssueJira0743_IncludeDoesNotWorkWithSubqueries.cs index 4ba270bbf..c41af4f57 100644 --- a/Orm/Xtensive.Orm.Tests/Issues/IssueJira0743_IncludeDoesNotWorkWithSubqueries.cs +++ b/Orm/Xtensive.Orm.Tests/Issues/IssueJira0743_IncludeDoesNotWorkWithSubqueries.cs @@ -339,7 +339,7 @@ public void Case21Test() { using (var session = Domain.OpenSession()) using (var tx = session.OpenTransaction()) { - var values = new[] { MyEnum.Bar, MyEnum.Foo }; + IReadOnlyList values = [MyEnum.Bar, MyEnum.Foo]; var result = session.Query.All() .Select(e => values.Contains(e.List.FirstOrDefault().Link.Value3.Value)).ToArray(); diff --git a/Orm/Xtensive.Orm.Tests/Linq/NullableEnumMaterializationTest.cs b/Orm/Xtensive.Orm.Tests/Linq/NullableEnumMaterializationTest.cs index 92a799f91..9471aafd0 100644 --- a/Orm/Xtensive.Orm.Tests/Linq/NullableEnumMaterializationTest.cs +++ b/Orm/Xtensive.Orm.Tests/Linq/NullableEnumMaterializationTest.cs @@ -67,7 +67,7 @@ public void SelectContainsTest() { using (var session = Domain.OpenSession()) using (var tx = session.OpenTransaction()) { - var values = new[] {MyEnum.Bar, MyEnum.Foo}; + IReadOnlyList values = [MyEnum.Bar, MyEnum.Foo]; var query = session.Query.All() .Select(e => new { Id = e.Id, @@ -101,7 +101,7 @@ public void SelectContainsWithRefTest() { using (var session = Domain.OpenSession()) using (var tx = session.OpenTransaction()) { - var values = new[] {MyEnum.Bar, MyEnum.Foo}; + IReadOnlyList values = [MyEnum.Bar, MyEnum.Foo]; var query = session.Query.All() .Select(e => new { Id = e.Id, @@ -130,4 +130,4 @@ public void SelectConditionWithRefTest() } } } -} \ No newline at end of file +} diff --git a/Orm/Xtensive.Orm/Orm/QueryableExtensions.cs b/Orm/Xtensive.Orm/Orm/QueryableExtensions.cs index 7f6f31674..59d84ed7a 100644 --- a/Orm/Xtensive.Orm/Orm/QueryableExtensions.cs +++ b/Orm/Xtensive.Orm/Orm/QueryableExtensions.cs @@ -307,6 +307,10 @@ public static bool In(this T source, IncludeAlgorithm algorithm, IEnumerable< values == null ? false : values.Contains(source); #pragma warning restore IDE0060 // Remove unused parameter + [Obsolete("Use '.LeftOuterJoin()' extension instead.")] + public static IQueryable LeftJoin(this IQueryable outer, IEnumerable inner, Expression> outerKeySelector, Expression> innerKeySelector, Expression> resultSelector) => + LeftOuterJoin(outer, inner, outerKeySelector, innerKeySelector, resultSelector); + /// /// Correlates the elements of two sequences based on matching keys. /// @@ -322,7 +326,7 @@ public static bool In(this T source, IncludeAlgorithm algorithm, IEnumerable< /// /// One of provided arguments is . /// Queryable is not a query. - public static IQueryable LeftJoin(this IQueryable outer, IEnumerable inner, Expression> outerKeySelector, Expression> innerKeySelector, Expression> resultSelector) + public static IQueryable LeftOuterJoin(this IQueryable outer, IEnumerable inner, Expression> outerKeySelector, Expression> innerKeySelector, Expression> resultSelector) { ArgumentNullException.ThrowIfNull(outer); ArgumentNullException.ThrowIfNull(inner);