協調流程變數類型
您可以宣告下列預先定義型別的變數:
變數 | |
---|---|
boolean | byte |
char | Datetime |
decimal | double |
int16 | int32 |
int64 | long |
sbyte | single |
字串 | 時間範圍 |
uint16 | uint32 |
uint64 |
您也可以宣告在專案中參考之任何 NET 架構型別的變數。
宣告協調流程變數的考量
在宣告協調流程變數時,請考慮下列項目:
BizTalk Server支援特定內容型路由案例的多值內容屬性,但您無法在協調流程中使用這類屬性。
為了支援協調流程的擱置和解除凍結,所有的協調流程變數都必須能夠使其狀態持續。 通常,這點會由變數型別或類別的可序列化或可資料流化來達成。
這些 .NET 架構的型別 (類別) 必須是可序列化的類別。 它們可能會以 "[Serializable]” 屬性宣告,或是明確實作 ISerializable .NET 介面 (在 System.Runtime.Serialization 命名空間中),以便進行實作。
如果 .NET 架構型別實際上是基礎 COM 元件的執行階段可呼叫包裝函式 (RCW),則該 COM 元件就必須實作 RCW 所需要的介面,以便成為可序列化的 .NET 類別 (例如,IpersistStream、IPersistStreamInit)。
由於任何 .NET 架構 (或基礎 COM) 型別都是在協調流程的流程內執行,這些型別的方法都不能延遲協調流程的執行 (例如,透過資源的爭用等等)。 而且這些型別實作的任何資源消耗,都會影響到呼叫之協調流程在其中執行的主控件執行個體。