2009-10-08 19 views
4

我有一個擁有Java服務器端對象和C#客戶端對象的系統。這些對象可以在系統的兩側進行修改,因此可以附加業務規則。目前業務規則只能在服務器端生存,而且我真的希望避免每次我想驗證對象時都必須聯繫服務器。c#和Java對象的共享業務規則

所以最好我想有一個可以同時在C#和Java中使用共享的業務規則,所以,當需要改變我只在一個地方應用它(和2顯然部署)。

有沒有人對我怎麼能去了解這個有什麼建議?

+1

我會建議暴露出業務規則爲Web服務,但是這意味着聯繫服務器來驗證業務對象,要避免嘗試。我很感興趣,看看有沒有好的解決方案。 – Jay

回答

5

這聽起來可能在第一次可怕的,但你其實可以考慮在JavaScript編碼的業務規則。

有在Java和.NET平臺上都可用的JavaScript引擎。這樣,通過在服務器(Java)和客戶端(C#)上託管一個(不同的)JavaScript引擎,它們都可以執行相同的JavaScript來執行業務規則。

認爲它是您的業務規則語言的選擇。這對任務來說也不錯,因爲它簡潔,靈活且衆所周知。

我已經做了類似的事情一次,建立靈活的遊戲規則在基於Java的遊戲。 JavaScript引擎的設置非常簡單,現在它們也變得非常快。

+0

一個有趣的想法,我會看看到它:) –

+0

它已經有一段時間,但這種使用犀牛也是獎金摸索出了很多比IKVM :) –

+0

更好地執行這在Android中。 –

2

使用IKVM

+0

嘿,很酷。 –

+0

酷,我會看看它:) –