0

我在同一个解决方案中有两个 Web 应用程序项目(项目 A 和项目 B)。

我希望能够:通过项目A,将文件保存在项目B目录中的某处。

每当我使用 Server.MapPath 等时,它都会解析为项目 A 的虚拟目录,而不是 B 的虚拟目录。

根据我的阅读,我相信我应该能够将项目 B 的 URL 直接输入到 save 方法中。但是,目前这两个项目都没有部署。此外,我想利用他们在同一个解决方案上的事实。

蒂亚!

4

2 回答 2

0

但是如果你正在保存一个文件,那么你就不想访问虚拟目录;你想要实际的(物理)目录。这意味着Request.MapPath是要走的路;您可以使用将跨应用映射设置为true的重载。

string pathToAppB = Request.MapPath("/AppBVirtualPath", Request.ApplicationPath, true);

不过,您仍然需要知道应用程序 B 将部署到哪个虚拟路径;除非您部署到本地 IIS,否则您无法在本地进行测试。

于 2012-06-27T05:45:24.167 回答
0

您可以将项目 A 和项目 B 的虚拟目录配置到磁盘上的同一目录。当您使用 Server.MapPath 从项目 A 保存文件时,它将被保存到该文件夹​​。然后当项目 B 尝试通过 url 访问文件时。虚拟目录将访问同一目录。

为 Web 项目配置虚拟目录:

在视觉工作室:见这篇文章

在 IIS 中:请参阅本教程

于 2012-06-27T05:48:19.853 回答