Open TomSendrovich opened 8 months ago
Does anyone know if this is the way it should work? I tried v 5.1.0 and 6.0.0 with the same result. Dictionary<string, object> properties are not passed into the SerializeJsonFn
MixpanelConfig config = new MixpanelConfig() { SerializeJsonFn = MixpanelJsonSerializer.Serialize, }; MixpanelClient client = new MixpanelClient("wdqwdqwdqwfwgwegwefgw", config);
Dictionary<string, object> props = new Dictionary<string, object>
{
{"WorksNicely", "Hog" },
{"BecomesEmptyArray", new[] {new Dictionary<string, object> {
{"Test", "Best" }
}
} },
{"NotHandledAtAll", new { Bos = true} }
};.
var testMess = client.PeopleSetTest(Guid.NewGuid().ToString(), props);
This is what's in testMess.Json:
{"$set":{"WorksNicely":"Hog","BecomesEmptyArray":[]},"$token":"wdqwdqwdqwfwgwegwefgw","$distinct_id":"8e6b2a37-0e9a-4e15-a5bf-abc76da7ba70"}
Thanks for the great library! I'm running into an issue with tracking events that have Dictionary properties. The message sent to Mixpanel looks fine, but the specific Dictionary<string, object> property always contains an empty array after serialization.
Here is a quick example:
var client = new MixpanelClient("your_token"); Dictionary<string, object> properties = new Dictionary<string, object>();
Dictionary<string, object> Items = new Dictionary<string, object> { {"property1", 1}, {"property2", 2}, {"property3", 3}};
properties.Add("Custom Property", Items);
var message = client.GetTrackMessage("test", properties);
Any ideas what I'm doing wrong? I feel like this has to be a widespread use case to send a list and that I'm just missing something.
Thanks for the help.