2016-06-28 62 views
3

在業務流程中,我試圖在傳出的EDI消息中設置屬性。 在郵件任務,我寫道:業務流程中的BizTalk C#名稱空間衝突

msgEDI850(EDI.DestinationPartyName) = HelperObj.EDIParty; 

在編譯的時候它扼流圈說是沒有定義DestinationPartyName。

錯誤的詳細信息顯示它正在錯誤的名稱空間中查找。 C#編譯器看起來應該是「MyCompany.EDI」而不是「EDI」。

IDE代碼完成顯示EDI.DestinationPartyName有效。

我改變了應用程序命名空間,不在任何級別包含EDI。 這不起作用:

msgEDI850(global::EDI.DestinationPartyName) = HelperObj.EDIParty; 

如何得到它使用正確的命名空間中自動生成的代碼有什麼建議?

回答

3

你所看到的是一個長期存在和預期的行爲。簡單地說,無論XLang編譯器在層次結構中的哪個位置,它都會因命名空間發生衝突而很容易混淆。

對不起,但解決方案是,您不能在任何應用程序中使用任何BizTalk擁有的命名空間。 沒有辦法解決這個問題。 USING也不受支持。

所以,沒有EDI,BTS,BTS2,BizTalk等

+0

Stackoverflow和你的救援。謝謝 – Jay

+0

對名稱空間中具有EDI的未使用項目的程序集的引用會將其分解。 – Jay