2011-09-08 99 views
3

我有一个使用SQL Server Compact数据库的ASP.NET MVC项目。我有我的FoobarContext下面的连接字符串:SQL Server Compact文件在哪里?

<add name="FoobarContext" 
connectionString="Data Source=|DataDirectory|Foobar.sdf" 
providerName="System.Data.SqlServerCe.4.0"/> 

我启动了该项目,并出现如预期般持续数据。但是,我无法在任何地方找到名为“Foobar.sdf”的文件。我错过了什么?

更新: 这不是我的连接字符串。设置断点和检查方面,我发现它的ConnectionString竟是如下:

Data Source=.\\SQLEXPRESS;Initial Catalog=MvcApplication3.Infrastructure.Data.FoobarContext;Integrated Security=True;MultipleActiveResultSets=True 

解开了谜底。

回答

3

默认情况下它应该是〜/ App_Data,但是您可以尝试运行AppDomain.CurrentDomain.GetData("DataDirectory")来查看ASP.Net认为该目录存在的位置。

如果这没有任何意义,您可能需要确保您的Windows资源管理器设置为显示隐藏文件,以防万一这是您没有看到该文件的原因。

0

它应该位于名为App_Data的文件夹中,取决于您的MVC项目的根目录。

+1

这就是我的预期,但没有sdf文件。有一个名为'ASPNETDB.MDF'的文件和一个名为'aspnetdb_log.ldf'的文件。 – Larsenal

+0

这个问题应该可以帮助你http://stackoverflow.com/questions/1268738/asp-net-mvc-find-absolute-path-to-the-app-data-folder-from-controller –

+0

我能够找到磁盘上的App_Data文件夹就好了。就是找不到预期的sdf文件。 – Larsenal

0

你应该吝啬在你的项目中的应用程序文件夹,你会发现里面的数据库文件。

Regards