students
public class students
{
public string id { get; set; }
public string name { get; set; }
public int age { get; set; }
public DateTime createtime { get; set; }
public DateTime modifydate { get; set; }
}
studentsMap
public class studentsMap : EntityTypeConfiguration<students>
{
public studentsMap()
{
ToTable("students");
HasKey(p => p.id);
Property(p => p.id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None).IsRequired();
Property(p => p.name).HasColumnType("VARCHAR").HasMaxLength(20).IsRequired();
Property(p => p.createtime).IsRequired();
Property(p => p.modifydate).IsRequired();
Property(p => p.age).IsRequired();
}
}
Model1
public partial class Model1 : DbContext
{
public Model1()
: base("name=Model1")
{
}
public virtual DbSet<students> StudentTests { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
var typesTomap = Assembly.GetExecutingAssembly().GetTypes()
.Where(type => !String.IsNullOrEmpty(type.Namespace))
.Where(type => type.BaseType != null && type.BaseType.IsGenericType && type.BaseType
.GetGenericTypeDefinition() == typeof(EntityTypeConfiguration<>));
foreach (var item in typesTomap)
{
dynamic config = Activator.CreateInstance(item);
modelBuilder.Configurations.Add(config);
}
base.OnModelCreating(modelBuilder);
}
}
分页查询
using (var db = new Model1())
{
var test = db.StudentTests
.OrderBy(p=>p.age)
.Where(p => p.name == "chen")
.Skip(2)
.Take(2)
.ToList();
}
需要注意的是where字句要放在skip之前,且分页一定要包含orderby,否则会出错