【发布时间】:2013-09-13 10:57:07
【问题描述】:
|DataDirectory|,你只有一份工作。 IIS7.5 上的 |DataDirectory| 解析为:
C:\inetpub\wwwroot\appname\App_Data
该文件夹不存在。正确的文件夹是:
C:\inetpub\wwwroot\appname\bin\App_Data
在开发机器上一切正常,但是当我部署到服务器时,AppData 被放置在bin\ 中。我使用任何 Visual Studio 2010 项目中所示的 AppData,并使用“Build Deployment Package”(VS2010)然后“Import Application”(IIS 管理器)进行部署。
我知道我可以使用 AppDomain.SetData 或类似工具手动设置路径,但我对该功能的解释是返回正确的位置以在不同的服务器上进行部署。如果我必须对该路径进行硬编码,这不是很有用。
连接字符串:"Data Source=|DataDirectory|\db.sqlite;"
如何让 |DataDirectory| 返回 AppData 路径或阻止创建不必要的 bin\ 文件夹?
【问题讨论】:
-
我希望你的意思是
@"Data Source=|DataDirectory|\db.sqlite;",否则它会寻找一个名为App_Datadb.sqlite的文件。 -
我都试过了,而且都有效。问题中的已解决目录是来自
<h1>@AppDomain.CurrentDomain.GetData("DataDirectory")</h1>的复制和粘贴(奇怪的是没有记录)。
标签: .net asp.net-mvc .net-4.0 connection-string