When trying to help a friend of mine configuring a dynamic SOAP Adapter Solicit-Response port, some like this:
WSSAPCreatePO_Send(SOAP.ClientConnectionTimeout) = 300000; WSSAPCreatePO_Send(BTS.RetryCount) = 3; WSSAPCreatePO_Send(BTS.RetryInterval) = 15000;
We got this strange error when trying to compile the project:
“identifier ‘RetryCount’ does not exist in ‘myprojectnamespace’; are you missing an assembly“
My friend actually found what was the problem and keep me track of the solution (for that thank you) that I found it quite interesting to share with you all.
Cause
This problem occurred because the namespace of the solution that was used was something like this:
- ‘CompanyName.Project.Module.BTS‘.
This problem occurs because we used a special keyword in the namespace used by BizTalk: “BTS” and when we try to compile the project the compiler is trying to get the property RetryCount from the namespace of the BizTalk project: ‘CompanyName.Project.Module.BTS‘ instead of namespace BTS associated with Microsoft.BizTalk.GlobalPropertySchemas assembly
Solution
To solve this problem just rename the namespace of your project, eg:
- ‘CompanyName.Project.Module’
- ‘CompanyName.Project.Module.Bts’
I don’t recommend the last one J and I suggest you never use special keywords in your project namespaces.
See BizTalk: Naming Convention for BizTalk Solutions by Leonid Ganeline