If I understand correctly, some of your data has a , in the information (i.e. "smith, john" for the First Name). If this is the case, the only resolution would be to replace the , with some other delimiter using some sort of parser prior to constructing the URIs. Since the , is our delimiting character for the data stream, it will treat this as a new data field and cause the behavior you are seeing. This will be easy since you are using C# strings. Simply use the following string function to replace the comma's in all your strings with some other symbol:
This will replace all commas in the FirstName string with a semi-colon. You can pick any character you want that is not a reserved character for creating a valid URI as the delimiter.
There is no way to get around the comma being treated as a delimiter using the Bulk Activity API, just as there is no way to get around it when using Comma Delimited Text files. The only alternative I can suggest is to use the Contacts Collection API instead. It will require you to create a valid XML document, but you can use any symbols you want in the XML document.
Dave Berard Senior Product Manager, Constant Contact
View API documentation, code samples, get your API key.