Advertisement
codeplanner

Mapping Auction DomainModel

May 4th, 2012
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.05 KB | None | 0 0
  1. //Mapping Auction DomainModel - Cornerstone T363
  2. protected override void OnModelCreating(DbModelBuilder modelBuilder)
  3.         {
  4.             //AUCTIONBID - Properties
  5.             modelBuilder.Entity<AuctionBid>().Property(p => p.Offer).IsRequired();
  6.  
  7.             //CHATMESSAGE - Properties
  8.             modelBuilder.Entity<ChatMessage>().Property(p => p.Time).IsRequired();
  9.             modelBuilder.Entity<ChatMessage>().Property(p => p.Message).IsRequired();
  10.  
  11.  
  12.             //AUCTIONITEM - Properties
  13.             modelBuilder.Entity<AuctionItem>().Property(p => p.Headline).IsRequired().HasMaxLength(50);
  14.             modelBuilder.Entity<AuctionItem>().Property(p => p.Description).IsRequired().HasMaxLength(100);
  15.             modelBuilder.Entity<AuctionItem>().Property(p => p.OutputPrice).IsRequired();
  16.  
  17.             //USER - Properties
  18.             modelBuilder.Entity<User>().Property(p => p.Name).IsRequired().HasMaxLength(50);
  19.             modelBuilder.Entity<User>().Property(p => p.Lat).HasMaxLength(100);
  20.             modelBuilder.Entity<User>().Property(p => p.Lng).HasMaxLength(100);
  21.  
  22.             //RELATIONS MAPPING
  23.             modelBuilder.Entity<AuctionItem>()
  24.                 .HasRequired(m => m.User)
  25.                 .WithMany(t => t.AuctionItems)
  26.                 .HasForeignKey(m => m.UserId)
  27.                 .WillCascadeOnDelete(true);
  28.  
  29.             modelBuilder.Entity<ChatMessage>()
  30.                 .HasRequired(m => m.User)
  31.                 .WithMany(t => t.ChatMessages)
  32.                 .HasForeignKey(m => m.UserId)
  33.                 .WillCascadeOnDelete(true);
  34.  
  35.             modelBuilder.Entity<AuctionBid>()
  36.                 .HasRequired(m => m.AuctionItem)
  37.                 .WithMany(t => t.AuctionBids)
  38.                 .HasForeignKey(m => m.AuctionItemId)
  39.                 .WillCascadeOnDelete(true);
  40.  
  41.             modelBuilder.Entity<AuctionBid>()
  42.                 .HasRequired(m => m.User)
  43.                 .WithMany(t => t.AuctionBids)
  44.                 .HasForeignKey(m => m.UserId)
  45.                 .WillCascadeOnDelete(false);
  46.  
  47.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement