Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Winforms 用.mdf文件(带有实体模型的项目)替换本地数据库的最有效方法_Winforms_Visual Studio 2010_Entity Framework_Mdf - Fatal编程技术网

Winforms 用.mdf文件(带有实体模型的项目)替换本地数据库的最有效方法

Winforms 用.mdf文件(带有实体模型的项目)替换本地数据库的最有效方法,winforms,visual-studio-2010,entity-framework,mdf,Winforms,Visual Studio 2010,Entity Framework,Mdf,在我的项目中,我正在使用,从一开始我就从本地数据库创建了模型。现在我想使用一个.mdf文件(在项目目录中)而不是本地数据库,但是我想在项目中尽可能少的干扰 如果可能,我不想创建新模型或更改实体名称等。 最有效的方法是什么?我可以更改连接字符串吗?如果是,我应该将其更改为什么?只需将mdf文件复制到AppData目录,并将连接更改为如下所示: <add name="CONNECTION-NAME" connectionString="metadata=res://*/DBModel.csdl

在我的项目中,我正在使用,从一开始我就从本地数据库创建了模型。现在我想使用一个.mdf文件(在项目目录中)而不是本地数据库,但是我想在项目中尽可能少的干扰

如果可能,我不想创建新模型或更改实体名称等。
最有效的方法是什么?我可以更改连接字符串吗?如果是,我应该将其更改为什么?

只需将mdf文件复制到AppData目录,并将连接更改为如下所示:

<add name="CONNECTION-NAME" connectionString="metadata=res://*/DBModel.csdl|res://*/DBModel.ssdl|res://*/DBM‌​odel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=NAME-OF-MY-COMPUTER\sqlexpress;AttachDbFilename=|DataDirectory|\MyDBFile.mdf;Initial Catalog=DATABASE-NAME;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />


注意这部分:AttachDbFilename=|DataDirectory |\MyDBFile.mdf

您所说的本地数据库是什么意思?嗯,我指的是在我的计算机上本地存储数据库,就像我在SQL Server中创建数据库一样。它的连接字符串现在如下所示:
我想知道如何将其更改为使用存储在project dir中的.mdf文件:答案为Thx,但答案为1。它不起作用:/当我尝试连接到db时,抛出异常:{“无法加载指定的元数据资源。”}2。我的目标是能够从另一台计算机上运行该项目,因此我想将数据库“附加”到该项目并将其存储在其中。但是,当您编写的连接字符串中仍然有关于我的计算机的信息并且它仍然连接到我的计算机上的sqlexpress时,它会工作吗?很抱歉,如果我的问题很琐碎,但我是这方面的初学者。总是可以将您的数据源编写为:“数据源=。\sqlexpress;”,它可以在您所使用的任何机器上工作。。不过,我不确定元数据的事情。。尝试在VS中双击它以在服务器资源管理器中打开它