<span>
</span><span>
<span>[Key]
</span><span>
public
</span> <span>int</span> DestinationId { <span>get</span>; <span>set</span><span>; }
</span><span>
<span>
public
</span> <span>
class
</span><span> BreakAwayContext : DbContext
{
</span><span>
protected
</span> <span>override</span> <span>void</span><span> OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity</span><destination>().HasKey(d =><span> d.DestinationId);
}
}
</span><span>
</span><span>
<span>
public
</span> <span>int</span> DestinationId { <span>get</span>; <span>set</span><span>; }
[ForeignKey(</span><span>
"</span><span>DestinationId</span><span>"
</span><span>)]
</span><span>
public
</span> Destination Destination { <span>get</span>; <span>set</span><span>; }
</span><span>
modelBuilder.Entity<lodging>().HasRequired(p => p.Destination).WithMany(p=>p.Lodgings).HasForeignKey(p =><span> p.DestinationId);
</span><span>
</span><span>
[MinLength(<span>10</span>),MaxLength(<span>30</span><span>)]
</span><span>
public
</span> <span>string</span> Name { <span>get</span>; <span>set</span><span>; }
[StringLength(</span><span>30</span><span>)]
</span><span>
public
</span> <span>string</span> Country { <span>get</span>; <span>set</span><span>; }
</span><span>
modelBuilder.Entity<destination>().Property(p => p.Name).HasMaxLength(<span>30</span><span>);
modelBuilder.Entity</span><destination>().Property(p => p.Country).HasMaxLength(<span>30</span><span>);
</span><span>
</span><span>
[Required(ErrorMessage=<span>
"</span><span>请输入描述</span><span>"
</span><span>)]
</span><span>
public
</span> <span>string</span> Description { <span>get</span>; <span>set</span><span>; }
</span><span>
modelBuilder.Entity<destination>().Property(p =><span> p.Country).IsRequired();
</span><span>
<span>Data Annotations:
将string映射成ntext,默认为nvarchar(max)
[Column(TypeName </span>= <span>
"</span><span>ntext</span><span>"
</span><span>)]
</span><span>
public
</span> <span>string</span> Owner { <span>get</span>; <span>set</span><span>; }
</span><span>
modelBuilder.Entity<lodging>().Property(p => p.Owner).HasColumnType(<span>
"</span><span>ntext</span><span>"
</span><span>);
</span><span>
</span><span>
[Table(<span>
"</span><span>MyLodging</span><span>"
</span><span>)]
</span><span>
public
</span> <span>
class
</span><span> Lodging
{
}
</span><span>
modelBuilder.Entity<lodging>().ToTable(<span>
"</span><span>MyLodging</span><span>"
</span><span>);
</span><span>
</span><span>
[Column(<span>
"</span><span>MyName</span><span>"
</span><span>)]
</span><span>
public
</span> <span>string</span> Name { <span>get</span>; <span>set</span><span>; }
</span><span>
modelBuilder.Entity<lodging>().Property(p => p.Name).HasColumnName(<span>
"</span><span>MyName</span><span>"
</span><span>);
</span><span>
</span><span>
<span>[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)] Guid类型的主键、自增长
</span><span>
public
</span> Guid SocialId { <span>get</span>; <span>set</span><span>; }
</span><span>
modelBuilder.Entity<person>().Property(p =><span> p.SocialId).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
</span><span>
</span><span>
<span>[NotMapped]
</span><span>
public
</span> <span>string</span><span> Name
{
</span><span>get</span><span>
{
</span><span>
return
</span> FirstName + <span>
"</span> <span>"
</span> +<span> LastName;
}
}
</span><span>
modelBuilder.Entity<person>().Ignore(p =><span> p.Name);
</span><span>
</span><span>
<span>[NotMapped]
</span><span>
public
</span> <span>
class
</span><span> Person
{ }
</span><span>
modelBuilder.Ignore<person><span>();
</span><span>
</span><span>
<span>1441598336
</span><span>
public
</span> Byte[] TimeStamp { <span>get</span>; <span>set</span><span>; } 只能是byte类型
</span><span>
modelBuilder.Entity<lodging>().Property(p =><span> p.TimeStamp).IsRowVersion();
</span><span>
</span><span>
<span> [ComplexType]
</span><span>
public
</span> <span>
class
</span><span> Address
{
</span><span>
public
</span> <span>string</span> Country { <span>get</span>; <span>set</span><span>; }
</span><span>
public
</span> <span>string</span> City { <span>get</span>; <span>set</span><span>; }
}
</span><span>
modelBuilder.ComplexType<address>();</address></lodging></person></person></person></lodging></lodging></lodging></destination></destination></destination></lodging></destination>