当前位置: 首页 > 知识库问答 >
问题:

ASP。NET Web API 2 FromForm模型绑定器属性?

南门新知
2023-03-14

ASP. NET Web API 2(非核心)是否也包含类似于[FromForm]属性的东西来绑定操作?或者我可以从ASP. NET Core添加dll到普通的ASP. NET Web API 2吗?{

"Message": "The request entity's media type 'multipart/form-data' is not supported for this resource.",
"ExceptionMessage": "No MediaTypeFormatter is available to read an object of type 'FooBindModel' from content with media type

“多部分/表单数据”。“,”例外类型“:”系统。网Http。系统上不支持的MediaTypeException“,”StackTrace“:”。网Http。HttpContentExtensions。ReadAsAsync[T](HttpContent内容,类型类型,IEnumerable1格式化程序,IFormatterLogger格式化程序记录器,CancellationToken CancellationToken)\r\n在系统上。网状物Http。模型绑定。FormatterParameterBinding。ReadContentAsync(HttpRequestMessage请求,类型类型,IEnumerable1格式化程序,IFormatterLogger格式化程序记录器,CancellationToken CancellationToken)”)

共有2个答案

彭烨烁
2023-03-14

我认为您实际上不理解这些属性或它们的作用。[FromBody]意味着您正在提供序列化(JSON,XML等)。)或基本上任何其他没有应用程序/x-www-表单-urlencodedmime类型的内容(图像或其他文件类型)。如果您正在向标记为[FromBody]的参数发送一个普通的表单帖子(Application/x-wow-form-urlencoded请求正文),当然它不会绑定,因为您明确告诉它应该期待与您不同的东西发送。

不管怎样,像[FromForm]这样的东西实际上是非常无用的,因为默认情况下需要Application/x-www-form-urlencoded,这就是这个属性所能做的。长短,只是不要用任何东西装饰你的动作参数。

施冠玉
2023-03-14

不,只有FromUriFromBody可用于ASP. NET Web API 2。可以看看官方留档。

另外,为什么要尝试实现FromForm到ASP. NET Web API 2。您可以简单地将表单操作配置为GETPOST,并将数据传递给Web Api。在我看来,这将是过度工程。

 类似资料:
  • 我有一个ASP. NET核心Web API。 一个endpoint,它接受一个名为搜索的模型。它有一个名为表达式类型查询的属性。这个表达式对象有子类。 我将以下JSON发布到我的endpoint(应用程序的内容类型/JSON) {"查询":{"字段ID":"主体","值":"蛋糕","运算符":"匹配"}} 首先,查询参数只是基本表达式——一个多态性问题! 所以我以为是定制的模型活页夹。 我可以针

  • 英文原文:http://emberjs.com/guides/object-model/what-do-i-use-when/ 如何选择? 刚刚接触Ember.js的用户常常为什么时候使用计算属性、绑定和观察器感到困惑。下面给出几条建议: 计算属性通常通过整合其他属性来构建新的属性。计算属性不应该包含任何应用行为,而且不应该在调用的时候产生任何副作用。除了在极少数的情况下,重复调用计算属性应该返回

  • 英文原文:http://emberjs.com/guides/templates/binding-element-attributes/ 除了普通文本,你可能也希望在模板中包含可以将其属性绑定到控制器的HTML元素。 例如,想象一下你的控制器中包含这样一个属性,它包含指向一幅图像的URL地址: 1 2 3 <div id="logo"> <img {{bind-attr src=logoUr

  • 英文原文:http://emberjs.com/guides/object-model/bindings/ 一个绑定在两个属性之间建立了一个连接,当其中一个发生改变时,另外一个将自动更新为新的值。绑定连接同一对象中属性,也可以连接不同对象的属性。不同于其他一些也实现了类似绑定的框架,Ember.js中的绑定可以在任意对象中使用,而并不紧紧局限于视图和模型。 建立一个双向的关联最简单的方法是添加一个

  • 我正在用ASP. NET网络应用编程接口编写一个网络应用编程接口,并使用以下视图模型。当一个特定属性上有两个验证属性(即[必需的]和[字符串长度(10)])时,我似乎对数据绑定有问题。 当将JSON值从客户端发布到窗体的控制器操作时: //发布api/列表 公开作废帖子([FromBody]TaskViewModel taskVM) 我认为: 如果我删除多个属性中的一个,则所有属性都绑定OK; 如

  • javafx属性是将数据模型连接到javafx gui的好方法,因为它们的绑定模型实现了强大的通知更新机制。 属性和绑定并不严格地与GUI相关,而是对JavaBeans的扩展。 因此,我们希望在应用程序模型类中使用它们,而不引入对包的依赖关系,并且通常来自. 换句话说:(update) 我可能需要将应用程序分成两个模块。 一个模块应该只包含操作数据的类(模型类,说MVC)。 第二个模块将包含所有图