Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Kod:
- ICriteria criteria = session.CreateCriteria<Unit>()
- .CreateAlias("UnitContext", "uc").CreateAlias("uc.Name", "ContextName") .SetFetchMode("UnitContext", FetchMode.Join);
- return criteria.List<Unit>();
- Błąd:
- NHibernate.QueryException: not an association: Name
- Klasy:
- public class Unit
- {
- public virtual int Id { get; set; }
- public virtual string Name { get; set; }
- public virtual string ShortName { get; set; }
- public virtual Context UnitContext { get; set; }
- }
- public class Context
- {
- public virtual int Id { get; set; }
- public virtual string Name { get; set; }
- public virtual IList<Unit> Units { get; set; }
- }
- Mapowania:
- public class UnitMap : ClassMap<Unit>
- {
- public UnitMap()
- {
- Id(x => x.Id);
- Map(x => x.Name).Column("name");
- Map(x => x.ShortName).Column("short_name");
- References(x => x.UnitContext, "context_id").Cascade.None();
- }
- }
- public class ContextMap : ClassMap<Context>
- {
- public ContextMap()
- {
- Id(x => x.Id);
- Map(x => x.Name);
- HasMany(x => x.Units).KeyColumn("context_id").Inverse().Cascade.All();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement