Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private int _id;
- private string _name;
- private IList<Location> _subLocations;
- private IList<Stock> _stockList;
- private Location _parent;
- private bool _isActive;
- private bool _recommend;
- public virtual IList<Location> SubLocations
- {
- get
- {
- if (_subLocations == null)
- {
- _subLocations = new List<Location>();
- }
- return _subLocations;
- }
- set
- {
- _subLocations = value;
- OnPropertyChanged("SubLocations");
- }
- }
- // more properties ...
- public class LocationMap:ClassMap<Location>
- {
- public LocationMap()
- {
- Id(x => x.Id);
- Map(x => x.Name);
- Map(x => x.IsActive);
- References(x => x.Parent);
- HasMany(x => x.SubLocations).Where(x => x.IsActive == true);
- HasMany(x => x.StockList).Where(x => x.IsActive == true);
- Table("tbl_locations");
- }
- }
- Id Name IsActive Parent_id
- 1 Magazijn A 1 NULL
- 2 Magazijn B 1 NULL
- 3 Gang A 1 2
- 4 Rek B 1 3
- public IList<Location> GetAllParentLocations()
- {
- var result = NHibernateHelper.Session.CreateQuery("from Location l fetch all properties where l.Parent is null and l.IsActive = true").List<Location>();
- return (List<Location>)result ?? new List<Location>();
- }
- NHibernate: select location0_.Id as Id15_, location0_.Name as Name15_, location0_.IsActive as IsActive15_, location0_.Parent_id as Parent4_15_ from tbl_locations location0_ where (location0_.Parent_id is null) and location0_.IsActive=1
- NHibernate: SELECT sublocatio0_.Location_id as Location5_1_, sublocatio0_.Id as Id1_, sublocatio0_.Id as Id15_0_, sublocatio0_.Name as Name15_0_, sublocatio0_.IsActive as IsActive15_0_, sublocatio0_.Parent_id as Parent4_15_0_ FROM tbl_locations sublocatio0_ WHERE (sublocatio0_.IsActive = 1) and sublocatio0_.Location_id=@p0;@p0 = 1 [Type: Int32 (0)]
- NHibernate: SELECT sublocatio0_.Location_id as Location5_1_, sublocatio0_.Id as Id1_, sublocatio0_.Id as Id15_0_, sublocatio0_.Name as Name15_0_, sublocatio0_.IsActive as IsActive15_0_, sublocatio0_.Parent_id as Parent4_15_0_ FROM tbl_locations sublocatio0_ WHERE (sublocatio0_.IsActive = 1) and sublocatio0_.Location_id=@p0;@p0 = 42 [Type: Int32 (0)]
- NHibernate: SELECT sublocatio0_.Location_id as Location5_1_, sublocatio0_.Id as Id1_, sublocatio0_.Id as Id15_0_, sublocatio0_.Name as Name15_0_, sublocatio0_.IsActive as IsActive15_0_, sublocatio0_.Parent_id as Parent4_15_0_ FROM tbl_locations sublocatio0_ WHERE (sublocatio0_.IsActive = 1) and sublocatio0_.Location_id=@p0;@p0 = 60 [Type: Int32 (0)]
- HasMany(x => x.SubLocations).KeyColumns.Add("Parent_Id").Where(x => x.IsActive == true);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement