C# 在实体框架中配置本地数据库位置

C# 在实体框架中配置本地数据库位置,c#,database,entity-framework,connection-string,C#,Database,Entity Framework,Connection String,我正在尝试为本地数据库配置其他位置 我读了一篇关于配置连接字符串的文章,它建议我可以将web配置中的| DataDirectory |替换为~/MyDirectory,其中~是web应用程序根目录。因此,我将连接字符串输入为: <connectionStrings> <add name="Context" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=Context-20130829161219;In

我正在尝试为本地数据库配置其他位置

我读了一篇关于配置连接字符串的文章,它建议我可以将web配置中的| DataDirectory |替换为~/MyDirectory,其中~是web应用程序根目录。因此,我将连接字符串输入为:

<connectionStrings>
<add name="Context" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=Context-20130829161219;Integrated Security=SSPI;AttachDBFilename=~/MyDirectory/Context-20130829161219.mdf"
  providerName="System.Data.SqlClient" />

不幸的是,当我运行应用程序时,它似乎根本没有创建数据库。我可以想象我做错的只是一件小事,但如果有人能给我指出正确的方向,我将不胜感激


非常感谢

尝试从package manager控制台运行
更新数据库
cmdlet-您至少应该看到一些输出,指出它不起作用的原因。

让我们尝试使用下面的字符串,它将对您有所帮助

<add name="Context" connectionString="metadata=res://*/Models.Datacontext.csdl|res://*/Models.Datacontext.ssdl|res://*/Models.Datacontext.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=(LocalDb)\SQLInstance;initial catalog=Context-20130829161219;persist security info=True;user id=sa;password=Yourpassword;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />


或者替换源=(LocalDb)\SQLInstance;以Source=.\SQLInstance开头;首字母

谢谢你的建议。我收到以下错误:发生文件激活错误。物理文件名“~/MyDirectory/Context-20130829161220.mdf”可能不正确。诊断并更正其他错误,然后重试该操作。是的,用| DataDirectory |替换~/MyDirectory/时,一切正常