将textxml读入ASP.MVC控制器

将textxml读入ASP.MVC控制器,第1张

概述如何将text / xml读入ASP.MVC控制器上的 *** 作? 我有一个Web应用程序,可以从两个不同的来源接收POSTed Xml,因此Xml的内容可能不同. 我希望我的控制器上的默认 *** 作能够读取Xml但是我很难看到我如何能够首先将Xml放入 *** 作中. 如果Xml是一致的,我可以使用Model Binder,但这不可能. 您可以从请求流中读取它: [HttpPost]public ActionRe 如何将text / xml读入ASP.MVC控制器上的 *** 作?

我有一个Web应用程序,可以从两个不同的来源接收POSTed Xml,因此Xml的内容可能不同.

我希望我的控制器上的默认 *** 作能够读取Xml但是我很难看到我如何能够首先将Xml放入 *** 作中.

如果Xml是一致的,我可以使用Model Binder,但这不可能.

解决方法 您可以从请求流中读取它:
[httpPost]public ActionResult Foo(){    using (var reader = new StreamReader(Request.inputStream))    {        string xml = reader.ReadToEnd();        // process the XML        ...    }}

要清理此 *** 作,您可以为X@R_404_4617@编写自定义模型绑定器:

public class X@R_404_4617@ModeBinder : IModelBinder{    public object BindModel(ControllerContext controllerContext,ModelBindingContext bindingContext)    {        return X@[email protected](controllerContext.httpContext.Request.inputStream);    }}

您将在Application_Start中注册:

ModelBinders.Binders.Add(typeof(X@R_404_4617@),new X@R_404_4617@ModeBinder());

最后:

[httpPost]public ActionResult Foo(X@R_404_4617@ doc){    // process the XML    ...}

这显然更清洁.

总结

以上是内存溢出为你收集整理的将text/xml读入ASP.MVC控制器全部内容,希望文章能够帮你解决将text/xml读入ASP.MVC控制器所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1108849.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存