将本地数据库放在Visual Studio解决方案中的位置?

时间:2015-05-19 06:37:28

标签: c# wpf entity-framework visual-studio mvvm

在我的解决方案中,我有四个项目

  1. 浏览

  2. 的ViewModels

  3. 模型

  4. 数据访问

  5. 顾名思义,DataAccess将负责与我的本地数据库通信,目前是mdf文件。我的问题是我应该把这个文件放在哪里?

    我应该放入bin\debug项目的DataAccess文件夹,还是应该放入\bin\debug项目的View文件夹,因为这个项目是启动项目,而且exe文件最终存在。

    =============================================== =====

    我正在尝试创建一个wpf mvvm桌面应用程序,

    我也在使用实体框架代码优先,所以我想将connectionStrings放在App.config目前处于Views项目下的active="false"文件中。我如何指定我的连接字符串呢?

3 个答案:

答案 0 :(得分:1)

如果您正在创建MVC应用程序,则可以找到App_Data文件夹。您可以在这里保留本地数据库。或者在项目中创建App_Data文件夹并添加本地数据库。

此外,您可以将连接字符串保留在项目中的Web.Config文件中。

答案 1 :(得分:0)

请勿将其放在您的bin文件夹中,这是源代码编译后的文件夹。您应该能够删除bin和obj文件夹,并通过重新编译项目来重新创建它们。

DataAccess / db.mdf似乎是一个非常合理的位置。发布项目时,您的目录结构与项目结构相同,项目将转换为.dlls和.exe。

只要您将Build Action设置为Copy,它就会在构建后在输出文件夹目录中结束。您需要根据项目是否已发布来切换您正在阅读的路径。

如果您正在使用WPF / ClickOnce,则可以使用

var path = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, ApplicationDeployment.IsNetworkDeployed ? "" : "../../", "DataAccess/db.mdf");  

答案 2 :(得分:0)

也许你应该看看App_Data文件夹?更多信息请访问:http://www.w3schools.com/aspnet/mvc_folders.asp

我会把它放在这里,因为客户端无法通过浏览器访问它,因为文件夹的名称表明这是存储应用程序数据的地方。

希望这有帮助!祝你好运!