Dela via


FromBodyAttribute Class

Definition

Specifies that a parameter or property should be bound using the request body.

public ref class FromBodyAttribute : Attribute, Microsoft::AspNetCore::Mvc::ModelBinding::IBindingSourceMetadata
[System.AttributeUsage(System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false, Inherited=true)]
public class FromBodyAttribute : Attribute, Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata
[System.AttributeUsage(System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false, Inherited=true)]
public class FromBodyAttribute : Attribute, Microsoft.AspNetCore.Http.Metadata.IFromBodyMetadata, Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata
[<System.AttributeUsage(System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false, Inherited=true)>]
type FromBodyAttribute = class
    inherit Attribute
    interface IBindingSourceMetadata
[<System.AttributeUsage(System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false, Inherited=true)>]
type FromBodyAttribute = class
    inherit Attribute
    interface IBindingSourceMetadata
    interface IFromBodyMetadata
Public Class FromBodyAttribute
Inherits Attribute
Implements IBindingSourceMetadata
Public Class FromBodyAttribute
Inherits Attribute
Implements IBindingSourceMetadata, IFromBodyMetadata
Inheritance
FromBodyAttribute
Attributes
Implements

Examples

In this example, the value of the 'name' field in the form-data request body is bound to the name parameter, and the value of the 'age' field is bound to the age parameter.

app.MapPost("/from-body", ([FromBody] Person person) => person);

public record Person(string Name, int Age);

If the EmptyBodyBehavior is set to EmptyBodyBehavior.Allow in the FromBody attribute, requests without a request body are allowed.

app.MapPost("/allow-empty-body",
(
    [Description("An optional request body")]
    [FromBody(EmptyBodyBehavior = EmptyBodyBehavior.Allow)] Body body
) =>

Remarks

Binds a parameter or property to the request body.

By default, ASP.NET Core MVC delegates the responsibility of reading the body to an input formatter.
In the case of ASP.NET Core Minimal APIs, the body is deserialized by JsonSerializer.

For more information about parameter binding see Parameter binding.

Constructors

FromBodyAttribute()

Properties

BindingSource

Gets the BindingSource.

EmptyBodyBehavior

Gets or sets a value which decides whether body model binding should treat empty input as valid.

Explicit Interface Implementations

IFromBodyMetadata.AllowEmpty

Applies to