2013-05-02 146 views
1

我正在設計一個從客戶端獲取XML文件並將其加載到我們的數據庫的過程,從而在我們這邊創建一個訂單。將XML映射到無關對象

該障礙是,並不總是一個?,客戶端的XML確實不像我們用來將數據加載到我們的數據庫的業務對象。

所以我必須設計一種方法來獲取它們指定到我們的自定義對象中的格式。

我正在考慮從XML中創建「實時」自定義對象,然後用「地圖」將其對象轉換爲我們的對象。這就是我現在所處的位置。

本質上我不想編寫另一個支持其數據的數據加載過程,我只想將他們的數據轉換爲我們的格式。

我知道這基本上是一個設計問題,所以我只是拋出我的想法,看看它是否與其他人一樣。或者如果有人已經這樣做並有一個建議,我很樂意聽到它。謝謝!

+0

您是否有特定的編程語言和環境?另外,您現有的數據庫基礎設施是什麼樣的? – pcurry 2013-05-02 15:46:01

+1

您可以使用Linq-to-XML將其XML文件直接轉換爲對象。 – 2013-05-02 15:49:29

+0

我正在使用SQL 2005的C#。現在我們有一個現有的流程,使用我們自己的業務對象,將訂單提交給Great Plains數據庫。我只想將他們的數據轉換成我們的格式,這樣我就可以進入我知道已經工作的過程。 – 2013-05-02 16:15:02

回答

1

從你的標籤,C#和XML,我會產生一個文件接收事件(操作系統級別),觸發小型應用程序,你將不得不作出。結構明智,我會去與CompanyName.Object1。

在XDocument上進行了解析和解析。 XElement及其屬性。底線,它看起來像一種CRM類型的實現,從我的實現經驗來看,它是一個長期的過程:分析傳入數據。你必須徹底與您的客戶,並讓他們寫具體..

<Nodes name="SpecificName"> 

節點=的localName

name =屬性( 「名稱」)

好運。

+0

謝謝!我有一個客戶定義的規範,所以我應該可以依靠這個來保持理智。這只是讓他們的XML進入我們的XML格式的問題。實際上,我開始傾向於XLST。未來,我們可能會有其他客戶需要以不同格式發送數據,但我們將始終需要以我們的格式翻譯這些數據。對我來說,這聽起來像XSLT。 – 2013-05-03 15:33:28