[英]Why is mdf file not appearing in the App_Data folder?
我一直在尝试开始使用 Beginning ASP.NET MVC 4。
并立即遇到问题,根据电子书,我应该能够启动一个新的 mvc 4 Internet 应用程序,调试并从 UI 模板中选择登录,然后停止。 这应该在 App_Data 文件夹中创建 mdf 文件。 我应该能够在服务器资源管理器中单击并打开它。
实际发生了什么 - 在我的 SQL Express 中创建了数据库。
正确执行此步骤对于遵循本教程的其余部分至关重要。
我熟悉 MVC ,但主要是前端的东西,所以我试图增加我对 MVC 的数据库/模型方面的理解。
这是一个全新的项目,没有进行任何更改,只是开箱即用的代码。 在 Windows XP 机器上,使用 Visual Studio 2010。
连接字符串 -
<add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=aspnet-HaveYouSeenMe-20131125091100;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
任何人都可以解释一下 - 为什么我的开箱即用的连接字符串在 SQL Express 中创建 Db 以及如何按照书的建议在 App_Data 文件夹中创建 mdf。 干杯。
我知道这是回答,但它可能就像单击解决方案资源管理器中的“显示所有文件”图标一样简单。 默认情况下 .mdf 文件不会显示,因此请确保选择“显示所有文件”:)
只需更改您的连接字符串:
<add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\aspnet-HaveYouSeenMe-20131125091100.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/>
|DataDirectory|
是指向应用程序的~/App_Data
文件夹的特殊令牌。
查看following article on MSDN
的following article on MSDN
其中提供了有关 SQLExpress 中连接字符串的更多详细信息。
该数据库很可能已在您的文档文件夹中创建。 在对数据库(在数据连接)的服务器资源管理器右键单击,然后单击浏览在SQL Server对象资源管理器。 然后,在SQL Server对象资源管理器右键单击您的数据库,并选择属性。 在属性窗口中的查找当前连接参数,看看数据文件中的值。
为了确保数据库在App_Data文件夹插件形成AttachDbFilename=|DataDirectory|\\database_name.mdf
您的连接的字符串中。
你缺少AttachDbFilename
<connectionstrings>
<add connectionstring="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\aspnet-HaveYouSeenMe-20131125091100.mdf;Integrated Security=True;User Instance=True "
name="ConnectionASPX" providername="System.Data.SqlClient" />
</connectionstrings>
在地方存储在App_Data文件夹中的数据库文件的物理路径,你可以指定|DataDirectory|
AttachDbFileName
设置中的变量。
就我而言,那是因为我用它来登录到我的电脑的用户帐户是Microsoft帐户(Outlook电子邮件地址),而Visual Studio的阅读我的本地用户帐户。 本地用户帐户是 “username” 的在C:\\ Users \\用户名\\文档\\ Visual Studio的2015年\\项目\\ ProjectFolder \\ App_Data文件。
我使用Visual Studio 2015年在Windows 10。
该解决方案被证明是简单的。 我只是需要去我的电脑设置,选择帐户,并选择与本地帐户,而不是微软帐户登录。
您还可以进入服务器资源管理器并右键单击数据连接。 然后按“添加连接”,改变数据源是“服务器数据库文件”,并在数据库文件名(新的或现有的),你在App_Data文件夹中去,如果你不能找到.mdf文件,然后浏览到该文件夹,添加你想给你的文件的名称。
`SulemansStore\SulemansStore\App_Data\SulemansDatabase.mdf`
我浏览到App_Data
并添加我的databasefile名Sulemansdatabase.mdf
(这部分我加了,如果我创建一个新的数据库文件)。
你有App_Data
文件夹吗? 就我而言,它出现在 Visual Studio 中,但实际上并不存在。 这是因为 git 不会推送空目录,因此将 repo 克隆到另一个位置将导致没有App_Data
文件夹。 一旦我手动创建它,问题就解决了。
即使在使用 |DataDirectory| 之后,它对我也不起作用。 它在保持 .mdf 文件名与解决方案名称相同后工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.