Tengo un modelo de vista que se parece a.Serializar un objeto con restsharp y pasarlo a WebApi no serializar la lista
public class StoreItemViewModel
{
public Guid ItemId { get; set; }
public List<Guid> StoreIds { get; set; }
[Required]
public string Description { get; set; }
//[Required]
//[DataMember(IsRequired = true)]
public int ItemTypeId { get; set; }
}
Tengo un pequeño ayudante que está usando RestSharp.
public static IRestResponse Create<T>(object objectToUpdate, string apiEndPoint) where T : new()
{
var client = new RestClient(CreateBaseUrl(null))
{
Authenticator = new HttpBasicAuthenticator("user", "Password1")
};
var request = new RestRequest(apiEndPoint, Method.POST);
//request.JsonSerializer = new JsonSerializer();
// {RequestFormat = DataFormat.Json};
request.AddObject(objectToUpdate);
// clientJsonSerializer = new YourCustomSerializer();
var response = client.Execute<T>(request);
return response;
}
Al depurar el controlador dentro de mi api productos
[HttpPost]
public HttpResponseMessage Create([FromBody]StoreItemViewModel myProduct)
{
//check fields are valid
.........
}
MyProducts están pobladas aparte de los StoreID lista pública que siempre se vuelven una sola recompensa con un Guid vacía. Incluso si he agregado 2 o más StoreIds
Supongo que es porque estoy haciendo algo mal con mi ayuda de Create en mi aplicación.
¿Alguien puede ayudar con esto es causando un gran dolor de cabeza.
Los datos en bruto se envían a la WebAPI está buscando como
ItemId=f6dbd244-e840-47e1-9d09-53cc64cd87e6&ItemTypeId=6&Description=blabla&StoreIds=d0f36ef4-28be-4d16-a2e8-37030004174a&StoreIds=f6dbd244-e840-47e1-9d09-53cc64cd87e6&StoreId=d0f36ef4-28be-4d16-a2e8-37030004174a
¿podría compartir cómo se ve la solicitud raw json? –
@KiranChalla, ¿cómo lo consigo usando los bits de restsharp? –
puede usar Fiddler, que es una httpproxy, para capturar las solicitudes/respuestas. –