好吧,我来自开源世界,其中“配置”似乎没有任何接近这个离奇的地方。我得到了一个“mdf”数据库文件。我正在使用Visual Studio 2013,我现在想要做的只是在Page Inspector或浏览器中调出dadgum页面 - 当我连接到办公室中的“真实”数据库时,我能够做到这一点。但现在我很偏远,需要使用这个“文件”。我把它放在我项目的“数据文件夹中;我把它放在My Documents路径中的一个文件夹中;我把它放在MS SQl Server的Program Files路径中。接下来我要把它放在垃圾,除非我能找到Visual Studio 2013中的这个“项目”是如何寻找数据库的。 我的“web.config”文件包含:
<add name="DefaultConnection" connectionString="Data Source=WS-xxxx;Initial Catalog=blahblahblah;MultipleActiveResultSets=True;Integrated Security=false;AttachDBFilename=|DataDirectory|blahblahblah.mdf;User Id=xxxxx;Password=yyyyy" providerName="System.Data.SqlClient" />
我也试过了:
<add name="DefaultConnection" connectionString="Data Source=WS-xxxx;Initial Catalog=blahblahblah;MultipleActiveResultSets=True;Integrated Security=false;AttachDBFilename=[C:\Users\MyName\My Documents\Test Database\blahblahblah.mdf;User Id=xxxxx;Password=yyyyy" providerName="System.Data.SqlClient" />
......而且这个:
<add name="DefaultConnection" connectionString="Data Source=WS-xxxx;Initial Catalog=blahblahblah;MultipleActiveResultSets=True;Integrated Security=false;User Id=xxxxx;Password=yyyyy" providerName="System.Data.SqlClient" />
似乎没有其他任何意义。我很感激有关为什么会这样做的任何(有效的)建议 - 我希望在此时使用C#进行编码,而不是使用MS Configuration的东西。作为信息,我可以在VS Studio的Server Explorer和SQL Server对象资源管理器中看到数据库。我也可以在工作室中查询它并获得有效的结果。它位于我在“我的文档”文件夹中指定的路径中。所以我很难想到我已经将所有这些不同的路径放在这个web.config文件中,并且当我调出Page Inspector时,Studio仍然说它无法找到它。 感谢。
这是我不断得到的错误,无论我把这个数据库放在哪里:
系统找不到指定的文件 描述:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪,以获取有关错误及其在代码中的起源位置的更多信息。
异常详细信息:System.ComponentModel.Win32Exception:系统找不到指定的文件
来源错误:
执行期间生成了未处理的异常 当前的网络请求。有关的来源和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。
堆栈追踪:
[Win32Exception(0x80004005):系统找不到该文件 指定]
[SqlException(0x80131904):与网络相关或特定于实例的 建立与SQL Server的连接时发生错误。该 服务器未找到或无法访问。验证该实例 名称是正确的,并且SQL Server配置为允许远程 连接。 (提供者:命名管道提供者,错误:40 - 不能 打开与SQL Server的连接)]
答案 0 :(得分:1)
如果您可以在VS 2013中的服务器资源管理器中看到数据库,我认为它列在&#34;数据连接&#34;下。如果是这样,请右键单击“数据连接”中的数据库名称,然后转到“属性”。其中一个属性是&#34;连接字符串&#34;。试试吧。
并确保不在文件路径周围添加方括号,因为它们不是有效字符。
您的配置标记应如下所示:
<add name="DefaultConnection"
connectionString="Data Source=WS-xxxx;Initial Catalog=blahblahblah;MultipleActiveResultSets=True;Integrated Security=false;AttachDBFilename=C:\Users\MyName\My Documents\Test Database\blahblahblah.mdf;User Id=xxxxx;Password=yyyyy"
providerName="System.Data.SqlClient"
/>