如何在 C# 和变量中接收 XML

How to receive XML in c# and variable

我知道这是一个愚蠢的问题,但我正在接收到我的端点 xml,收到它后我想从 xml 中提取一个值并将其显示为响应。我在 Visual studio

中使用 .Net Framework Web API 项目

这是 xml 某人发送到我的 API 端点:

<?xml version="1.0" ?>
<Message>
<ResultCode>3</ResultCode>
</Message>

与此问题相关的另一个挑战是如何接收上面的 XML?通常 xml 文件将通过“doc.Load("c:\temp.xml");”调用但是我如何在我的 API 中接收 XML 并从那里提取 ResultCode 值。 这是我的 API 代码的 header:

public string Post(string incomingXML)
{

}

第一个问题,不需要文件,可以使用

doc.LoadXml(@"<?xml version=""1.0"" ?>
<Message>
<ResultCode>3</ResultCode>
</Message>");

doc.LoadXml(incomingXML) 适合你的情况

关于你的第二个问题是否仍然存在。信息不足,但有所有选项供您选择:

  • [最好的解决方案]你可以使用Server.MapPath("~/path/your.xml")(或HttpContext.Current.Server.MapPath("~/path/your.xml")) - ~这里表示你的webapp的根文件夹。您需要将 xml 放在包含手动创建或上传的 webapp 的文件夹中。

  • 您可以将 Copy to Output Directory 选项更改为第二个或第三个,这样就可以使用 doc.Load("your.xml") 访问您的文件。您需要在构建时将 xml 与 webapp 放在文件夹中。

  • [不需要的解决方案] 你可以让你的 IIS 进程访问其他文件夹,然后你的 webapp 是 - 用你的 xml 右键单击​​文件夹 -> 属性 -> 安全 -> 编辑 -> 添加

然后在文本区输入IIS_IUSRS,点击检查名字,确定。现在您可以指定 Access

以后请一题一题。