Mvc WebApi Querystring到AddPost方法

时间:2015-01-12 10:41:56

标签: c# model-view-controller controller query-string asp.net-apicontroller

我试图获取浏览器中的查询字符串, 示例/ UserHome / UserProfile?username = dangercoder 。我在WebApi控制器中工作

从以下网址我想得到" dangercoder"所以我可以在我的Web Api中的AddPost方法中使用dangercoder用户名

到目前为止我在该方法中所做的事情(接收者ID可以是硬编码的,但当然我希望它是riskcoder用户名转换为id。

  [System.Web.Http.HttpPost]
  public IHttpActionResult AddPost(Post post)
  {
       if (!ModelState.IsValid)
       {
           return BadRequest(ModelState);
       }            
       var user = User.Identity.Name;
       post.SenderID = UserRepository.GetUserId(user);
       // QueryString that returns username in the parameter below.
       post.RecieverID = UserRepository.GetUserId();
       PostRepository.AddNewPost(post);
       return CreatedAtRoute("DefaultApi", new { id = post.ID }, post);
   }

1 个答案:

答案 0 :(得分:1)

据我所知,视图UserProfile包含带有Post字段的HTML表单。

您可以在包含用户ID的表单中创建隐藏字段SenderId