Je reçois les données exemple suivant sont revenus d'un rappel MailChimp:Parsing chaîne de requête imbriquée de URI dans WebAPI
type: subscribe
data[id]: 5h3872nb33
data[merges][REFERRAL]: 83HJS
Il est codé dans l'URI, comme:
?type=subscribe&data%5Bid%5D=65761e38d6&data%5Bmerges%5D%5BREFERRAL%5D=3TVPQ
ou
?type=subscribe&data[id]=65761e38d6&data[merges][REFERRAL]=3TVPQ
Mon contrôleur est la suivante
public bool Get([FromUri]CallbackModel model)
{
// Process request
}
Avec le modèle:
public class CallbackModel
{
public string Type { get; set; }
public CallbackData Data { get; set; }
}
public class CallbackDataModel
{
public string Id { get; set; }
}
J'ai omis diverses tentatives que j'ai fait pour obtenir le data[merges][REFERRAL]
d'une manière agréable, mais je commence à croire qu'il ne sera pas possible.
J'essaie d'éviter la route Request.GetQueryNameValuePairs()
mais je suis prêt si c'est la seule option viable.
Idéalement, les champs de fusion être une propriété de Data
:
var referral = model.Data.Merges.Referral;
quelqu'un Hope peut aider, Merci.
Etes-vous sûr de vouloir un HTTP GET? –
Je suis sûr que non, mais c'est comme ça que MailChimp fait ses webhooks ;-) –