假設有5家汽車租賃機構,當一個人在網上進行租賃時,將XML與汽車租賃詳情一起發送到租賃機構,由某些軟件進行解析並將其輸入到他們的系統中。我可以避免在以下情況下覆蓋方法嗎?
現在,如果有發送XML用於汽車租賃的標準方式,那麼這很容易,但是讓我們假設每個機構與不同的接口合作,用於發送汽車租賃和每個接口發送XML不同的格式,所以當它需要被解析時,你不能有一個標準的方法,你需要能夠覆蓋處理多個接口的方法。舉個例子,你可能有以下2種:
<Rental>
<FirstName>John</FirstName>
<LastName>Doe</LastName>
<Pickup time="13:00"/>
<Date>06/06/12</Date>
</Rental>
VS
<Rental>
<Name>
<First>John</First>
<Last>Doe</Last>
</Name>
<Pickup time="13:00" date="06/06/12"/>
</Rental>
如果每輛車機構使用不同的接口來處理租金,是覆蓋的方法5次,唯一的辦法每個新的代理機構,它將不得不再次增長,還是有一個更簡單的方法呢?
您可能需要考慮使用XSLT將XML轉換爲某些標準格式並將其轉換爲某些標準格式。您可以使用XslCompiledTransform對象將XSLT腳本應用於任何XML文檔,並讓其輸出轉換後的XML文檔。你可以用文件或全部內存來做到這一點。 –
擁有一個針對租賃的通用接口以及針對每個變體的實現似乎是一種相當標準且合理的解決方法。 –
@SteveDog - 我見過XSLT,但看起來有點嚇人。 – Xaisoft