如何使用我的Web应用程序部署XML文件?

时间:2012-06-08 16:10:54

标签: asp.net xml deployment

我写了一个ASP.net Web应用程序。为了遵循“实用程序员”中的建议将应用程序逻辑置于配置中,我编写了一个描述各种业务规则的大型XML文件。

当我在本地开发工作站上测试应用程序时,我将文件复制到c:\xxxxx\myfile.xml,然后编写代码以从该位置读取文件。

将此xml文件部署为我的Web应用程序的一部分的正确方法是什么,以便从部署Web应用程序的目录中读取它?

更新:有问题的XML文件用于服务器端配置,永远不会可供下载给最终用户。

4 个答案:

答案 0 :(得分:3)

如果你没有将它作为资源嵌入,你应该:

  1. 创建一个用于存放此文件的目录。
  2. 创建文件并将其Build Action设置为Content。
  3. 在该目录中创建一个禁止访问该目录的web.config文件,这样就不会将业务规则暴露给Internet。
  4. 在应用程序的主web.config中添加一个设置,该设置提供相对于应用程序根目录的此文件的路径,即“〜/ MySecureFolder / MyBusinessRules.Xml”。
  5. 使用一些调用HttpServerUtility.MapPath Method的代码将值从web.config中的设置转换为虚拟路径。

答案 1 :(得分:0)

我不知道这是否是您想要的 - 单击XML文件,然后打开属性窗口并找到“Build Action”属性。将值设置为“嵌入资源”

答案 2 :(得分:0)

我认为你需要做的是:

  1. 将XML文件添加到Visual Studio中的Web应用程序项目
  2. 右键单击该文件,然后选择'属性...'
  3. 构建操作设置为'内容'和复制到输出目录到'不要复制'
  4. 这将确保您的XML文件与Web应用程序的其余部分一起部署。

答案 3 :(得分:-1)

如果要将http文件中的XML文件提供给服务器,则应该这样做 将它放在您的Web发布文件夹中。

此ASP指令应该可以帮助您找到您的发布路径: Request.ServerVariables( “APPL_PHYSICAL_PATH”)

相关问题