# LeftOuterJoin<T, U, TKey, R>(IQueryable<T>, IQueryable<U>, Expression<Func<T, TKey>>, Expression<Func<U, TKey>>, Expression<Func<T, IEnumerable<U>, R>>) Method
An IQueryable<T> extension method that left outer join.
## Definition
**Namespace:** CapyKit.Extensions
**Assembly:** CapyKit (in CapyKit.dll) Version: 1.0.2
**C#**
``` C#
private static IQueryable LeftOuterJoin(
this IQueryable source,
IQueryable inner,
Expression> outerSelector,
Expression> innerSelector,
Expression, R>> resultSelector
)
```
**F#**
``` F#
[]
private static member LeftOuterJoin :
source : IQueryable<'T> *
inner : IQueryable<'U> *
outerSelector : Expression> *
innerSelector : Expression> *
resultSelector : Expression, 'R>> -> IQueryable<'R>
```
#### Parameters
- IQueryable(T)
- The source to act on.
- IQueryable(U)
- The inner.
- Expression(Func(T, TKey))
- The outer selector.
- Expression(Func(U, TKey))
- The inner selector.
- Expression(Func(T, IEnumerable(U), R))
- The result selector.
#### Type Parameters
- Generic type parameter.
- Generic type parameter.
- Type of the key.
- Type of the r.
#### Return Value
IQueryable(R)
An IQueryable<R>
#### Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type IQueryable(T). When you use instance method syntax to call this method, omit the first parameter. For more information, see
Extension Methods (Visual Basic) or
Extension Methods (C# Programming Guide).
## See Also
#### Reference
LINQExtensions Class
LeftOuterJoin Overload
CapyKit.Extensions Namespace