从asp.net mvc web api接收HTML编码的值

时间:2014-04-03 19:09:27

标签: asp.net-mvc asp.net-web-api

我对MVC web api相当新,并试图让POST请求正常处理。它主要工作,但字符串值是HTML编码的。我认为这将自动处理,我发现无法手动执行此操作。

这是ajax请求:

    $.ajax({
        url: '/api/PulseStudies/UpdateTask',
        type: 'POST',
        data: { 'userID': userid, 'taskID': CurExamTaskID, 'comment': comment, 'complete': complete },
        async: true,
...

以下是服务器端API:

[HttpPost]
public HttpResponseMessage UpdateTask(TaskResponse value)
{
    Tasks.UpdateTask(value.userID, value.taskID, value.comment, value.complete);
    return Request.CreateResponse(HttpStatusCode.NoContent);
}

public class TaskResponse
{
    public int userID { get; set; }
    public long taskID { get; set; }
    public string comment { get; set; }
    public bool complete { get; set; }
}

评论值是HTML编码的,例如" blah%20blah"。如何获得正确解码的值?

1 个答案:

答案 0 :(得分:1)

我相信你的意思是它是UrlEncoded。在服务器端,您希望HttpServerUtility.UrlDecode()http://msdn.microsoft.com/en-us/library/6196h3wt(v=vs.110).aspx将其恢复。