我在.edmx文件中创建了一些表,并通过选择“从模型生成数据库”并在数据库上手动执行.edmx.sql文件来生成数据库来生成数据库。
然而,现在,我正在创建一个设置对话框,允许用户将程序连接到他们自己的数据库。我认为运行context.CreateDatabase
将足以创建数据库以及表,但不会创建表。
当用户最初以模型开始时指定自己的服务器和数据库时,创建数据库和表的首选方法是什么?
答案 0 :(得分:7)
好的,我想出了一种创建表和数据库的方法(不一定是最好的方法)。 CreateDatabaseScript
的结果可以执行:
// create the database
db.CreateDatabase();
// grab the script to create the tables
string createScript = db.CreateDatabaseScript();
// execute the script on the database
db.ExecuteStoreCommand(createScript);
您必须进行一些检查以确保表格和数据库尚未创建,否则应用程序将崩溃。
我打算将我的项目转换为代码优先。希望以上内容可以帮助任何人看。