webApi之FromUri和FromBody区别


ublic  Link GetLink([FromUri] FileRequest fileRequest)
    {
        if  (ModelState.IsValid)
        {
            var  xml = WebConfigurationManager.AppSettings[ "appDiscoveryXml" ];
            var  wopiServer = WebConfigurationManager.AppSettings[ "appWopiServer" ];
            bool  updateEnabled =  false ;
            bool .TryParse(WebConfigurationManager.AppSettings[ "updateEnabled" ],  out  updateEnabled);
            WopiAppHelper wopiHelper =  new  WopiAppHelper(HostingEnvironment.MapPath(xml), updateEnabled);
 
            var  result = wopiHelper.GetDocumentLink(wopiServer + fileRequest.name);
 
            var  rv =  new  Link
            {
                Url = result
            };
            return  rv;
        }
 
        throw  new  ApplicationException( "Invalid ModelState" );
    }

 

  FileRequest类的定义

1
2
3
4
5
6
7
public  class  FileRequest
  {
      public  string  name {  get set ; }
 
      public  string  SelectedItemId {  get set ; }
      public  IEnumerable<SelectListItem> Items {  get set ; }
  }

  

 这里的FromUri强制从url中读取FileRequest 对象,也就是说

    当访问Http://localhost:80?name=eric&SelectedItemId={Guid.NewGuid()}

   此处将自动转换Uri中的参数作为对象属性忽略form传递的数据

 

而使用FromBody将强制从FormData中读取数据

而非URL中获取参数~


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM