shr*_*thi 1 xml asp.net-mvc asp.net-web-api
我创建了一个接受用户输入为 xml 的服务,如果缺少任何参数,我必须返回一个视图,允许用户输入缺少的详细信息。
所以我认为使用 api 控制器返回视图是不可能的,所以我使用了 mvc 控制器。但是当我读取xml时显示以下错误。
C# 不包含“Content”的定义,并且找不到接受第一个类型参数的扩展方法“Content”(您是否缺少 using 指令或程序集引用?)
这是我的代码
public class MyController : Controller
{
public IHttpActionResult MyService([FromUri] TestProperty testProperty)
{
string DataXML = this.Request.Content.ReadAsStringAsync().Result;
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是
1.如何解决这个错误?
2.有没有其他方法可以使用api控制器来满足我的需求?将视图返回给用户并接受 xml。
请注意,Content是可用HttpRequestMessage的ApiController不在HttpRequestBase的Controller
如果你想使用Request.Content.ReadAsStringAsync()你的控制器应该继承自ApiController(Web API)而不是控制器。
如果你想阅读 MVC 控制器中的内容,你可以尝试如下。
string content = "";
System.Web.HttpContext.Current.Request.InputStream.Position = 0;
using (var reader = new StreamReader(
Request.InputStream, System.Text.Encoding.UTF8, true, 4096, true))
{
content = reader.ReadToEnd();
}
//Rest
System.Web.HttpContext.Current.Request.InputStream.Position = 0;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4458 次 |
| 最近记录: |