如何在指定路径的实体框架中创建动态数据库?

时间:2012-04-07 04:43:43

标签: entity-framework-4 entity-framework-4.1 entity edmx

目前我在Entity Framework中使用CreateDatabase()方法创建动态数据库。 它成功执行,并在以下路径创建数据库: “c:\ Program Files \ Microsoft SQL Server \ MSSQL10.SQLEXPRESS \ MSSQL \ DATA” 但我想在我的应用程序目录中创建数据库。 这该怎么做? 请帮帮我。

1 个答案:

答案 0 :(得分:1)

通常,所有数据库都是在SQL Server中配置的默认路径上创建的。仅当您使用SQL Server Express并且定义了指定要在数据文件夹中创建的数据库的连接字符串时,它才会使用您的应用程序文件夹。它只适用于SQL Server Express。确保连接字符串的内部部分如下所示:

Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\YourDbFile.mdf;Database=YourDbName; Integrated Security=SSPI;

其中|DataDirectory|占位符将被数据目录的路径替换。对于Web应用程序,它应该是App_Data,对于独立应用程序,它应该是应用程序的文件夹。您还可以使用以下方法直接在连接字符串中使用任何路径,或通过使用以下方法控制DataDirectory解析:

AppDomain.CurrentDomain.SetData("DataDirectory", YourPath);