来自android的MVC ModelBinding

时间:2015-01-09 11:18:22

标签: android asp.net-mvc-4 model-binding

我在尝试绑定控制器中的某些值时遇到问题。我正在从Android发布一个JSONObject,包含两个简单的值,firstname和surname。

正在我的机器上创建文件(file.txt),但结果为空。它似乎没有从我的Android请求中绑定我的值。

I.E,文件中的输出为:嗨,:

有人可以把注意力集中在这上面,看看有什么问题吗?

非常感谢。

Android代码:

                HttpClient client = new DefaultHttpClient();
                HttpPost post = new HttpPost("http://10.0.2.2/");

                JSONObject person = new JSONObject();
                person.put("firstname","Bob");
                person.put("surname","Builder");
                StringEntity stringEntity = new StringEntity(person.toString());
                stringEntity.setContentType("application/json");
                post.setEntity(stringEntity);

                client.execute(post);

MVC:

public class Person
{
    public string firstname { get; set; }
    public string surname { get; set; }
    public void create(string result)
    {
        File.WriteAllText(@"C:\AndroidAPI\file.txt", "Hi, "+result);
    }
}
public class HomeController : Controller
{
    public ActionResult Index(Person person)
    {
        Person pp = new Person();
        pp.create(pp.firstname + " : " + pp.surname);
        return View();
    }
}

1 个答案:

答案 0 :(得分:0)

我尝试在评论中写这个,但格式不明确:

由于您的请求是来自android的POST,我认为您应该在Controller中为您的方法添加[HttpPost]属性。

public class HomeController : Controller
{
    [HttpPost]
    public ActionResult Index(Person person)
    {
        Person pp = new Person();
        pp.create(pp.firstname + " : " + pp.surname);
        return View();
    }
}