共用方式為


如何使用運算式建立物件和呼叫物件方法

您可能需要使用運算式來建立物件或呼叫方法。

建立物件

若要建立具有類型為 .NET 類別的變數,您可以在 Expression 圖形中建構物件。 您的 .NET 類別變數屬性會包含一個建構函式。 使用預設的建構函式時,只要和宣告其他變數 (像是類型 bool 或 int 中的其中一項) 一樣直接宣告變數即可。

如果您使用採用參數的建構函式,請使用 關鍵字 new,後面接著物件類別和括弧中的任何參數:

new MyClass(myParam1, myParam2)  

警告

使用 預設建構 函式屬性可能不會針對某些確實有建構函式的物件顯示。 在此情況下,會自動使用預設建構函式,而且若您嘗試使用不同的建構函式,就會發生錯誤。

叫用方法

若要呼叫 .NET 類別物件上的方法,請在物件參考上附加一個句號和方法名稱,後面跟著以括號括住的任何參數:

MyObject.MyMethod (param1)  

以參數傳送和使用訊息

若要以參數將訊息傳送給 .NET 類別上的方法呼叫,請先在定義該類別的專案上新增 Microsoft.XLANGs.BaseTypes.dll 的參考,然後在方法簽章中使用類型 XLANGMessage。

使用類型 XLANGPart 參考多部分訊息類型,可讓您存取訊息的各個部分:

MyMethod(XLANGMessage myMsg)  
{  
XLANGPart myPart = myMsg["Part1"];  
XmlDocument xmlDoc = (XmlDocument) myPart.RetrieveAs(typeof(XmlDocument));  
}  

在呼叫本身中,您只需向對其他參數一樣提供訊息的名稱即可:

MyObject.MyMethod(myMessage)  

您也可以類型 XLANGPart 來傳送訊息部分。

.NET 成員呼叫

您可以存取公用成員,但直接存取訊息元件的成員除外。 若要直接存取訊息部分的成員,就必須將它升級為辨別欄位。

COM/COM+ 元件叫用

XLANGs 會產生 C# 程式碼。 所有使用者宣告的 XLANGs 變數都會以 C# 變數的形式產生。 除了在不可部分完成的交易中以外,並沒有任何特殊的行為。 當服務元件 (也就是說,實作 System.EnterpriseServices.ServicedComponent) 的類別實例會在不可部分完成的範圍中宣告,然後只有 XLANG 會產生並使用實際的 DTC COM+ 交易。

如果變數在不可部分完成的範圍內當做左值 (L-value,也就是寫入的值) 來參考,但是宣告於外部範圍時,會複製該變數來支援復原。 不過, xmlDocument) 之類的物件 (可以在 .NET 函式呼叫中當做參數傳遞時修改,因此 XLANG 會遺漏物件正在寫入,而且不會正確回復。 此情況的解決方法是將這類物件傳遞為 ref 參數。

這裡的底線為元件的行為應該與在其他 C# 程式中一樣。

另請參閱

關於 BizTalk 訊息內容屬性