webapi(post)接收值除了dynamic有没有更好的方法

-一个大坑 2019-06-07 11:18:56
参数 var formData = { 'emplid': _this.data.emplid, 'type': '0' };


  
public HttpResponseMessage SaveRenewalPhoto(string emplid, string type)
{
var result = DLRControl.SaveRenewalPhoto(emplid, type);
return ApiResult.toJson(result, string.Empty);
}
//这样传不进来,网上搜的用dynamic

public HttpResponseMessage SaveRenewalPhoto(dynamic dy)
{
var result = DLRControl.SaveRenewalPhoto(dy.emplid, dy.type);
return ApiResult.toJson(result, string.Empty);
}
...全文
426 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
挥泪斩女友 2019-06-10
  • 打赏
  • 举报
回复
数据模型对象才会匹配http的data
  • 打赏
  • 举报
回复
接口部分为了项目更具备可读性,怎么也得定义实体吧,用个dynamic后面的人怎么接手,还要去看前端js代码?万一读写分离,那前端都没得看?
正怒月神 版主 2019-06-10
  • 打赏
  • 举报
回复
post不能接受两个参数, 你自己创建一个对应的model
-一个大坑 2019-06-10
  • 打赏
  • 举报
回复
引用 2 楼 qq_40778501 的回复:
dynamic就挺好,不知道你说的更好是指什么意思。
如果你想要用强类型,那就建一个类,然后把dynamic换成这个类,反正我是觉得dynamic比建个类轻松多了。
你要是想要你代码里第一种写法,用mvc吧,mvc可以。

建类还不如用dynamic
主要问下api能不能用SaveRenewalPhoto(string emplid, string type)
不行就用dynamic吧
菜鸟王小凡 2019-06-10
  • 打赏
  • 举报
回复
序列化转一下,就可以,dynamic 转string, string再转对象。
by_封爱 2019-06-10
  • 打赏
  • 举报
回复
一般都是定义class

public ihttpactionresult aaaa([frombody] userinfo u)
D56233577 2019-06-08
  • 打赏
  • 举报
回复
简单参数,默认读取查询字符串。
复杂参数,默认使用媒体类型格式化程序读取正文,通常使用 json。
所以你可以创建一个类来获取数据,比如。

public class User
{
public string UserName { get; set; }
public string Password { get; set; }
}

public IHttpActionResult SignIn(User user)
...

如果不想创建类,可以用 JObject。

public void Post(JObject person)
{
string name = person["Name"].ToString();
int age = person["Age"].ToObject<int>();
}

qq_40778501 2019-06-08
  • 打赏
  • 举报
回复
dynamic就挺好,不知道你说的更好是指什么意思。 如果你想要用强类型,那就建一个类,然后把dynamic换成这个类,反正我是觉得dynamic比建个类轻松多了。 你要是想要你代码里第一种写法,用mvc吧,mvc可以。
爱生活爱敏敏 2019-06-07
  • 打赏
  • 举报
回复
你用个string类型接受就行了,但是你这个实际上是一个json格式的数据,你把值接受之后解析就行了,这样两个值都能拿到了

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧