MrModest

NHibernateBuyerPurchase.cs

Dec 9th, 2019
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.27 KB | None | 0 0
  1. public class Buyer
  2. {
  3.     public virtual int Id { get; set; }
  4.  
  5.     public virtual string Name { get; set; }
  6. }
  7.  
  8. public class Purchase
  9. {
  10.     public virtual int Id { get; set; }
  11.  
  12.     public virtual decimal Sum { get; set; }
  13.  
  14.     public virtual int BuyerId { get; set; }
  15.  
  16.     public virtual Buyer Buyer { get; set; }
  17. }
  18.  
  19. public class NHibernateHelper
  20. {
  21.     public static ISession OpenSession()
  22.     {
  23.         ISessionFactory sessionFactory = Fluently.Configure()
  24.             .Database(MsSqlConfiguration.MsSql2012.ConnectionString(@"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=tempdb;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False").ShowSql()
  25.             )
  26.             .Mappings(m =>
  27.                 m.FluentMappings
  28.                     .AddFromAssemblyOf<Purchase>()
  29.                     .AddFromAssemblyOf<Buyer>())
  30.             .ExposeConfiguration(cfg =>
  31.                 new SchemaUpdate(cfg)
  32.                     .Execute(false, true))
  33.             .BuildSessionFactory();
  34.         return sessionFactory.OpenSession();
  35.     }
  36. }
  37.  
  38. public class PurchaseMap : ClassMap<Purchase>
  39. {
  40.     public PurchaseMap()
  41.     {
  42.         Id(p => p.Id);
  43.         Map(p => p.BuyerId);
  44.         Map(p => p.Sum);
  45.         References(p => p.Buyer);
  46.     }
  47. }
  48.  
  49. public class BuyerMap : ClassMap<Buyer>
  50. {
  51.     public BuyerMap()
  52.     {
  53.         Id(b => b.Id);
  54.         Map(b => b.Name);
  55.     }
  56. }
Add Comment
Please, Sign In to add comment