Please remember that when you use the expression shape in BTS 2004 you are NOT programming in C#, rather, you are programming in xLang/s. Do whatever you have to in order to remember this, if you don't like calling it Xlang, call it X#, or C# 'lite'. (I recommend calling it X#, with the understanding that it is not yet X# but is a solid prototype) If you are really that particular just call it X flat :)
Limitations/Rules to Remember
- Don't bother trying to use Arrays or other index based objects in orchestrations, my suggestion is that you code indexed based operations in a separate .NET class and call it from the orchestration.
- Don't try to implement control of flow statements in expression shapes, use the provided shapes from the toolkit instead.
- Don't try to implement the using/imports behaviour, just use the fully qualified names of the classes you want to access.
- Don't try to implement events or delegates.
- Don't try to call orchestrations via remoting, expose them as an xml webservice or use the call orchestration shape.
- The nice little operators don't generally work ++,--, +=, -= .... etc.