J'utilise l'API de MailChimp pour m'abonner à une liste. Fonction listsubscribe() est utilisé pour abonnement par courriel:Php 2d tableau comme C# 2d array/struct
public static listSubscribe(string apikey, string id, string email_address, array merge_vars, string email_type, boolean double_optin, boolean update_existing, boolean replace_interests, boolean send_welcome)
J'ai téléchargé .NET wrapper officiel de MailChimp pour leur API
Lorsque l'on regarde dans Visual Studio, c'est l'une des fonctions surchargées:
listSubscribe(string apikey, string id, string email_address, MCMergeVar[] merges)
Lorsque je clique sur sur la définition de MCMergeVar [], cela sort:
[XmlRpcMissingMapping(MappingAction.Ignore)]
public struct MCMergeVar
{
public string name;
public bool req;
[XmlRpcMissingMapping(MappingAction.Error)]
public string tag;
public string val;
}
Dans un exemple de php sur le site Web de MailChimp, c'est la variabilité de merges
est déclarée:
$merge_vars = array('FNAME'=>'Test', 'LNAME'=>'Account', 'INTERESTS'=>'');
Comment écrire correctement ce tableau pour mon wrapper C#? J'ai essayé quelque chose comme ceci:
MCMergeVar[] subMergeVars = new MCMergeVar[1];
subMergeVars["FNAME"] = "Test User";
Mais il faut un int
en place où "FNAME"
est maintenant placé, si cela ne fonctionne pas ...
Merci à l'avance, Ile
EDIT 1: J'ai essayé la solution FoxFire mais aucune donnée de subMergeVars n'est transmise au serveur MailChimp, seul le courrier électronique est passé:
// Subscribe email to list
string subID = "26973e52cc";
string subEmail = "[email protected]";
MCMergeVar[] subMergeVars = new MCMergeVar[5];
subMergeVars[0].name = "FNAME";
subMergeVars[0].val = "FNDynamic";
subMergeVars[1].name = "LNAME";
subMergeVars[1].val = "LNDynamic";
mailChimp.api.listSubscribe(subID, subEmail, subMergeVars, "html");
Il semble ok pour moi, mais les données sont toujours pas transmis au serveur MailChimp .. Je vais maintenant modifier ma question avec l'exemple que j'ai essayé –
Je l'ai deviné ... .nom doit être remplacé par .val et ça marche très bien :) Merci! –
Ce n'est pas clair ce que vous voulez dire par ".name doit être remplacé par .val". Pourriez-vous publier un extrait? –