这是关于带有Visual Studio 2012 Ultimate和SQL Server Express 2012的ConnectionStrings /
ASP.NET MVC。
在这里跟进本教程:http :
//www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-
aspnet-mvc-4我遇到了一个问题我的web.config中的这两个连接字符串:
<connectionStrings>
<add name="DefaultConnection"
connectionString="Data Source=(LocalDb)\v11.0;
Initial Catalog=aspnet-MvcMovie-users;
Integrated Security=SSPI;
AttachDBFilename=|DataDirectory|\aspnet-MvcMovie-users.mdf"
providerName="System.Data.SqlClient" />
<add name="MovieDBContext"
connectionString="Data Source=(LocalDB)\v11.0;
AttachDbFilename=|DataDirectory|\Movies.mdf;
Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
该网站运行正常,但我无法确定为什么在App_Data文件夹中创建第一个数据库,而在“ C:\ Program Files \ Microsoft SQL
Server \ MSSQL11.SQLEXPRESS \ MSSQL \
DATA”中创建第二个数据库?我认为两者都将在App_data中创建,因为两者都利用了以下属性:AttachDBFilename = |
DataDirectory |!
注意:本教程提到应该在App_Data中,并且添加了一个屏幕截图,可以在其中显示它!
我一直在寻找答案,并陷入了SQL的复杂性(我认为用户实例可能是解决方案),但无法为此找到答案:
(这对于阅读有关用户实例http://msdn.microsoft.com/zh-
cn/library/bb264564(v=sql.90).aspx可能很有用)
任何想法都将不胜感激。提前致谢。
问候
经过研究/测试,结果如下:
VS将查看DataContext的类名称,并查看是否提供了与该类名称相同名称的连接字符串。例如:
public class MovieDataContext : DbContext
和
<connectionStrings><add name="MovieDataContext" ...
如果它设法找到匹配的连接字符串,它将根据您在相应数据字符串中指定的条件来创建数据库(要将数据库添加到App_Data中,请将数据库的路径设置为|
DataDirectory |,如上述两个连接字符串中所示)在问题中);
如果名称不匹配或您未提供任何连接字符串,VS将退回到默认设置,并在默认位置/设置 (通常为C:\ Program Files \ Microsoft
SQL Server \ MSSQL11)中创建数据库。 SQLEXPRESS \ MSSQL \ DATA)。
请注意,“集成安全性”设置和“初始目录”都没有任何作用(我能够在具有集成安全性= True和集成安全性=
SSPI且有/没有初始目录的App_Data中创建数据库)。
希望这可以帮助。感谢所有参加的人。
问题内容: 我正在使用本地数据库,由于某种原因,当我使用时,添加/删除时数据库不会更新 但是, 如果我使用以下目录,它确实可以工作 有人知道为什么吗? 问题答案: 变量具有基于OS的.NET Framework设置的值。 我对此做了一个快速实验。 当我运行上面的代码时,它什么也没显示。调试后,我发现该变量具有值。 然后,我尝试使用它来创建数据库连接并打开它。 此代码失败,并出现以下错误。 尝试为文
本文向大家介绍c# DataDirectory的用法,包括了c# DataDirectory的用法的使用技巧和注意事项,需要的朋友参考一下 笔者在使用Entity Framework中的Scaffolding机制自动创建拓展名为mdf的数据库及表单时,遇到如下的错误: A file activation error occurred. The physical file name '\\Music