为什么MVC 5中的DefaultConnection有2个连接字符串?

时间:2014-01-08 01:15:45

标签: asp.net-mvc connection-string

好奇。为什么在创建新的MVC5项目时,有2个连接字符串。

Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-Application1.Web
-20140107075640.mdf;

Initial Catalog=aspnet-Application1.Web-20140107075640;Integrated Security=True" 

有什么理由吗?此外,该号码20140107075640的内容是什么?

1 个答案:

答案 0 :(得分:1)

我在创建项目时只看到一个连接字符串:

<connectionStrings>
  <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-WebApplication7-20140107051904.mdf;Initial Catalog=aspnet-WebApplication7-20140107051904;Integrated Security=True"
    providerName="System.Data.SqlClient" />
</connectionStrings>

我认为随机数(或时间戳)是为了确保数据库具有唯一名称。如果您以前创建了一个项目Foo并且它在SQL Server LocalDB中创建了一个新数据库,那么如果您创建一个名为Foo的第二个项目,您将最终共享该数据库。通常,这是不可取的,因此将随机化令牌插入到连接字符串中以使它们保持唯一。您始终可以将初始目录值自定义为您喜欢的任何值。