c# - tutorial - Enlace de modelo en ASP.NET Core para asignar guiones bajos a los nombres de propiedades de casos de títulos
form asp net mvc core (2)
Puede utilizar la propiedad Name
del atributo FromQuery
aquí.
Ejemplo:
public class OauthParameters
{
[FromQuery(Name = "client_id")]
public string ClientId { get; set; }
[FromQuery(Name = "response_type")]
public string ResponseType { get; set; }
[FromQuery(Name = "redirect_uri")]
public string RedirectUri { get; set; }
}
Tengo una clase modelo a la que quiero vincular una cadena de consulta en mi aplicación ASP.NET MVC Core (RC2).
Necesito admitir los guiones bajos en las claves de cadena de consulta para confirmar las especificaciones de OAuth, pero quiero trabajar con los nombres de las propiedades de los títulos en mi aplicación.
Mi clase modelo se ve así:
class OauthParameters
{
public string ClientId {get; set;}
public string ResponseType {get; set;}
public string RedirectUri {get; set;}
}
por lo que me gustaría unir cadenas de consulta como client_id
, response_type
y redirect_uri
.
¿Existe alguna forma para que ASP.NET MVC Core haga esto de manera automática o mediante una anotación de atributo?
He leído algunos artículos sobre cómo escribir carpetas de modelos personalizados, pero parecen (1) ser demasiado complejos para lo que estoy tratando de lograr y (2) están escritos para RC1 o versiones anteriores en mente y parte de la sintaxis ha cambiado.
Gracias por adelantado.
Solución para .net core 2.1 y 2.2
O sin los atributos, puede hacer algo como esto, que es más limpio, creo (por supuesto, si las propiedades del modelo son las mismas que los parámetros de consulta).
Mientras tanto lo uso en .net core 2.1 y 2.2
public async Task<IActionResult> Get([FromQuery]ReportQueryModel queryModel)
{
}