Mercurial > pub > bltoolkit
view Source/Mapping/Fluent/AssociationMap.cs @ 4:f757da6161a1
!bug 100 + 2h fixed gregression
author | cin |
---|---|
date | Sun, 24 Aug 2014 17:57:42 +0400 |
parents | f990fcb411a9 |
children |
line wrap: on
line source
using System; using System.Collections.Generic; using System.Linq.Expressions; namespace BLToolkit.Mapping.Fluent { public partial class MapFieldMap<T, TR> { public class AssociationMap<TRt> { private readonly MapFieldMap<T, TR> _owner; private readonly bool _canBeNull; private readonly List<Expression<Func<T, TRt>>> _thisKeys; public AssociationMap(MapFieldMap<T, TR> owner, bool canBeNull, List<Expression<Func<T, TRt>>> thisKeys) { this._owner = owner; this._canBeNull = canBeNull; this._thisKeys = thisKeys; } public MapFieldMap<T, TR> ToMany<TRf, TRo>(Expression<Func<TRf, TRo>> otherKey, params Expression<Func<TRf, TRo>>[] otherKeys) { var keys = new List<Expression<Func<TRf, TRo>>>(otherKeys); keys.Insert(0, otherKey); return this._owner.Association(this._canBeNull, this._thisKeys, keys); } public MapFieldMap<T, TR> ToOne<TRo>(Expression<Func<TR, TRo>> otherKey, params Expression<Func<TR, TRo>>[] otherKeys) { var keys = new List<Expression<Func<TR, TRo>>>(otherKeys); keys.Insert(0, otherKey); return this._owner.Association(this._canBeNull, this._thisKeys, keys); } } } }