我是ASP.NET Core的新手。我正在使用带有EF Core的VS2017 ASP.NET Core来构建应用程序,该应用程序允许我管理保存在数据库中的表中的每日采购订单。
在网络上有一个输入文本框,允许我输入表名,当我单击“创建”按钮时,将创建新表。我会每天创建一个新表格,例如“Order25072017”,“Order26072017”,......等等。
1)如何使用EF核心以编程方式在asp.net Core MVC中创建新表?
这些新表使用相同的“Order”模型/模式,获取订单列表的代码是“_context.Order25072017.ToList();”。我打算用表名列表创建下拉列表。选中后,它将允许我从所选表格中获取订单列表。
2)我在OnModelCreating()中需要做什么? 3)如何在查询中更改表名称,例如_context。{newtable} .ToList()在运行时?
数据库上下文:
$em = $this->getContainer
模特:
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
: base(options)
{
}
public DbSet<Order> Order25072017 { get; set; }
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
}
}
OrderController中的构造函数:
public class Order
{
public int ID { get; set; }
[Required]
public string Product { get; set; }
public int Price { get; set; }
public int Discount { get; set; }
}
答案 0 :(得分:0)
_context.Database.EnsureCreated()