C# 如何在实体框架中创建一个表,而不首先从数据表中创建代码?

C# 如何在实体框架中创建一个表,而不首先从数据表中创建代码?,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我是新的实体框架和这个论坛。。。我正在使用Asp.NETMVC5和EntityFrameworkV6。我有一个DataTable,我想用它的精确结构(相同的列标题和行)导入到我现有的EF数据库中。我不能首先通过模型和代码来实现这一点,因为每次从磁盘获取数据表时,数据表中的列可能会不同 我到处都找遍了,找不到任何帮助。以下是我一直在玩的游戏: MresTablesDB db = new MresTablesDB(); DataTable betas = resources["betas"] as

我是新的实体框架和这个论坛。。。我正在使用Asp.NETMVC5和EntityFrameworkV6。我有一个DataTable,我想用它的精确结构(相同的列标题和行)导入到我现有的EF数据库中。我不能首先通过模型和代码来实现这一点,因为每次从磁盘获取数据表时,数据表中的列可能会不同

我到处都找遍了,找不到任何帮助。以下是我一直在玩的游戏:

MresTablesDB db = new MresTablesDB();
DataTable betas = resources["betas"] as datable;

//todo: create params with betas
string sql = "CREATE TABLE test ( testid int, col1 varchar(255), col2 varchar(255) )";
db.Database.ExecuteSqlCommand(System.Data.Entity.TransactionalBehavior.DoNotEnsureTransaction, sql,)??

这能做到吗?谢谢

您不能动态创建表,但可以从数据库对表进行反向工程。也许更多关于你正在努力完成的事情的细节会提供其他选择。谢谢你的回复。所以我有一个分析部门在工作,它将数据输入一个独立的应用程序(从excel复制表格)——我们在代码中将这些数据作为数据表使用。如何将这些表放入我的EF db中-我们知道一些表的结构,但1/2我们不知道它可能有多少列,或者列名是什么。首先通过代码是不可能的。您必须使用null数据库初始值设定项并自己计算SQL查询。