共用方式為


延伸路線設計工具

路線Designer是 Microsoft Visual Studio 的視覺領域特定語言 (DSL) ,可讓路線圖形化模型搭配 Microsoft BizTalk ESB 工具組使用。 設計工具會公開開發人員可撰寫自訂延伸模組的各種擴充點,以啟用新功能和/或新的組態選項。

建立自訂路線匯出工具

路線Designer架構可讓您建立自訂模型匯出工具,以序列化和保存路線模型中的資料。

建立傳訊服務的自訂擴充器

路線Designer架構可讓您建立路線服務模型專案的自訂擴充器,可用來將屬性新增至屬性包,以供傳訊服務使用。

如需如何建立這類擴充器的範例,請參閱安裝和執行Designer擴充性範例

為 Orchestration-Based 路線服務建立自訂擴充器

路線Designer架構可讓您建立路線服務模型元素的自訂擴充器,可用來將屬性新增至屬性包,以供協調流程型路線服務使用。

如需如何建立這類擴充器的範例,請參閱安裝和執行Designer擴充性範例

建立自訂解析程式擴充項

路線Designer的架構可讓您建立自訂擴充器來設定自訂解析程式。 這些擴充器提供圖形化介面,可在解析程式連接字串中設定名稱/值組,其對應至特定解析程式擴充器類別中的屬性。

如需如何建立這類擴充器的範例,請參閱安裝和執行Designer擴充性範例

建立自訂配接器屬性的資訊清單檔

建立自訂配接器提供者時,您也必須為顯示端點組態屬性的解析程式擴充程式提供配接器提供者的設計工具支援。 若要啟用設計工具支援,您必須建立配接器提供者資訊清單檔。

配接器提供者資訊清單檔會定義與特定配接器提供者相關聯的屬性、其類型、描述,以及可在其中找到這些屬性的元件。 例如,這些資訊清單檔案應該放在與行程Designer二進位檔相同的資料夾中 (,例如 Microsoft.Practices.Itineary.DslPackage.dll) 唯一名稱 (FTPPropertyManifest.xml) 。

以下是配接器提供者資訊清單檔的參考實例;自訂資訊清單檔案的結構應該類似。

<?xml version="1.0" encoding="utf-8" ?>  
<adapterPropertyManifest adapterName="FTP">  
     <aliases>  
          <alias name="globalPropertySchemas" value="Microsoft.BizTalk.GlobalPropertySchemas, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />  
     </aliases>  
     <properties>  
          <property name="UserName" type="FTP.UserName" description="The user name for the connection." encrypted="true" assembly="globalPropertySchemas" />  
          <property name="Password" type="FTP.Password" description="The password for the conection." encrypted="true" assembly="globalPropertySchemas" />  
          <property name="MaxConnections" type="FTP.MaxConnections" description="The maximun number of connections." assembly="globalPropertySchemas" />  
          <property name="EventArgs" type="System.EventArgs" assembly="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />  
     </properties>  
</adapterPropertyManifest>  

建立自訂篩選擴充項

路線Designer架構可讓您建立自訂篩選設定的自訂擴充器。 這些擴充器提供圖形化介面,以在篩選連接字串中設定名稱/值組,其會對應至特定篩選擴充項類別中的屬性。

  • /Samples/Designer Extensibility Samples/Extenders.Itinerary.OrchestrationSample/Extenders.Itinerary.OrchestrationSample/Extenders.Itinerary.OrchestrationSample

  • /Samples/Designer Extensibility Samples/Extenders.Resolvers.ResolverSample/Extenders.Resolvers.ResolverSample

    建立自訂驗證規則

    行程Designer引進的最後一個重大延伸模組是一種驗證機制,可讓您在外部使用網域特定語言 (DSL) 、指定及實作模型驗證規則。 當使用者按一下模型快捷方式功能表上的 [ 驗證 ] 或 [ 全部驗證 ] 時,就會啟動 DSL 驗證架構的機制。 這會叫用 DSL 架構的DslCommandSet物件,進而呼叫路線Designer中的驗證引擎。

    ValidationEngine類別會使用企業程式庫驗證應用程式區塊執行模型專案驗證,並將驗證錯誤記錄至 Microsoft Visual Studio IDE 中的 [錯誤清單] 視窗。 在企業程式庫組態檔中定義應該針對模型中每種專案類型執行的驗證。 檔案名為 Ruleset.config,位於所有行程Designer二進位檔所在的二進位檔案夾中。 下列範例是組態檔的片段,其中包含兩個驗證規則 (名為驗證程式) UddiResolver 擴充器,一個用於 ServerUrl 屬性,另一個用於 ServiceKey 屬性。

<!--   
UddiResolver  
-->  
<type assemblyName="Microsoft.Practices.Services.Extenders.Resolvers.UDDI"  
 name="Microsoft.Practices.Services.Extenders.Resolvers.UDDI.UddiResolver">  
<ruleset name="Menu">  
<properties>  
<property name="ServerUrl">  
<validator type="Microsoft.Practices.Modeling.Validation.NotEmptyStringValidator, Microsoft.Practices.Modeling.Validation"  
          messageTemplate="The '{1}' property value should not be empty or null."  
          name="UddiResolver.ServerUrl not null validator"/>  
</property>  
<property name="ServiceKey">  
<validator type="Microsoft.Practices.Modeling.Validation.NotEmptyStringValidator, Microsoft.Practices.Modeling.Validation"  
          messageTemplate="The '{1}' property value should not be empty or null."  
          name="UddiResolver.ServiceKey not null validator"/>  
</property>  
</properties>  
</ruleset>  
</type>  

每個規則都會識別實作規則的驗證程式。 路線Designer隨附一組大量的驗證程式類別。 它們全都在Designer二進位檔案夾中的 Microsoft.Practices.Modeling.Validation 專案中。

使用此驗證機制的最後一個結果是,路線Designer使用者可以藉由變更提供的規則和驗證程式,或新增自己的規則和驗證程式來修改模型驗證方式。 您可以執行下列兩個步驟,而不需開啟、修改、重建及重新部署 DSL 即可完成此動作:

  1. 建立驗證程式類別,並將它放在 Microsoft.Practices.Modeling.Validation.dll 程式庫所在的二進位檔案夾內。

  2. 將專案新增至 Rules.config 檔案,以定義應該套用驗證程式之模型專案類別的哪些屬性。