SSIS Error After Adding the BO & Utility Dlls

SOLVED
Go to solution
JeffryP
Member

SSIS Error After Adding the BO & Utility Dlls

After developing using the cs files, I recently replaced them with a reference to the BO & Utility Dlls located in ...DTS\Binn\ folder

 

I'm able to query by list type getListMember() which wasn't present in the cs Utility file (do I have the wrong one?) Anyway, the getListMember() is working, but now I have the followin error UpdateFullForm.

 

Also, note that I also lost UpdateSmallForm() that was present in the Utility.cs but isn't found in the dll? Error:

 

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.

at System.ThrowHelper.ThrowKeyNotFoundException() at System.Collections.Generic.Dictionary`2.get_Item(TKey key)

at ConstantContactUtility.Components.ContactComponent.CreateFullUpdateAtomEntry(Contact contact, String accountContactUri, String accountContactListUri)

at ConstantContactUtility.Components.ContactComponent.UpdateContact(Contact contact, String apiUri, String accountContactListUri, Boolean fullUpdate)

at ConstantContactUtility.Utility.UpdateContact(AuthenticationData authenticationData, Contact contact)

at ConstantContactUtility.Utility.UpdateContactFullForm(AuthenticationData authenticationData, Contact contact)

at GoSync.ScriptMain.Main() --- End of inner exception stack trace ---

at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)

at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)

at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams)

at System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, CultureInfo culture) at Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTATaskScriptingEngine.ExecuteScript()

1 ACCEPTED SOLUTION

My work-around is to abandon the dll's in favor of the cs scripts. I already had my own generic method to make a stream, I just added an enum for listType to compose the AddressUri and added logic to get the lastUpdate cutoff date from my ctctLog and I now have Active, Removed & DoNotMail lists in SQL. Triggers fire to eval the data and update the CRM data as needed.

View solution in original post

3 REPLIES 3
Ryan_D
Employee

Hey,

 

We are currently looking into your issue and I apologize for any delay.

Ryan Davis
Quality Engineer
JeffryP
Member

No worries...

 

I should say I'm working with just one and the same contact for a few days, setting the mailing Yes/No fields in my database, which fires a trigger to put them into a queue. My sProc gets this one record and either is sending the same contact data except for variations in which ContactList is included in ContactLists; in other words I'm making no other changes to my code other than to add a reference to the dll's dated 9/28/2011 or using the Asp .Net cs scripts.

 

My only other change was to change the namespace of the uploadcontact.App_code namespace (done a week ago) to ConstantContactList and the clas to ConstantContact, and Auth data username = ScriptMain.username.  I'll post a down & dirty SSIS CtCt API soup to nuts how-to when I get some time...

My work-around is to abandon the dll's in favor of the cs scripts. I already had my own generic method to make a stream, I just added an enum for listType to compose the AddressUri and added logic to get the lastUpdate cutoff date from my ctctLog and I now have Active, Removed & DoNotMail lists in SQL. Triggers fire to eval the data and update the CRM data as needed.

Developer Portal

View API documentation, code samples, get your API key.

Visit Page