2015-07-06 61 views
0

我正在編寫一個2軟件平臺。 一個是桌面應用程序,另一個是ASP.Net MVC應用程序。 需要2個軟件來寫入和讀取數據庫中的值。直接訪問數據庫或使用中間件

問題是我應該直接寫入數據庫,還是應該編寫第三個與其他兩個應用程序通信(使用TCP/IP)的軟件,並將數據寫入數據庫?

注意,安全和性能對我來說非常重要。

我讀過,建議使用中間件,所以我將不勝感激了詳細的解答:)

由於提前, 沙烏爾

回答

0

我會完全推薦使用實體框架或其他的ORM那。在類庫中創建模型,並使用它從兩個應用程序訪問數據庫。開始時可能會很困難,但是您可以編寫自己的SQL代碼來訪問數據庫。

我也沒有看到這裏的TCP/IP通信

+0

我正在使用實體框架。但從某種意義上來說,它仍然是直接訪問數據庫(僅由其他庫包裝)。所以這仍然是一個問題,使用第三個軟件(中間件)與數據庫通信是否有優勢? –

+0

我會詳細說明這個用例。如果我們正在談論通過互聯網不可靠的用戶訪問,並且想要隱藏dB的實現,我會去管理所有數據庫訪問的第三方案。如果我們談論的是當地的環境,可能不值得 –

2

我想你會發現它從長遠來看,寫一個核心的應用程序來處理業務邏輯和數據庫讀取更容易維護的需要/寫,包括供您的兩個客戶端使用的API層。這裏好處:

  1. 你可以寫寫你的核心邏輯和數據庫訪問邏輯一旦 ,而不是每個客戶端的複製它。
  2. 您可以在一個地方,而不是每個客戶端進行修改(假設API合同保持不變。你可能要實現某種版本爲好)
  3. 您可以在未來以較少的努力
  4. 添加更多客戶

我不完全確定你的安全需求是什麼,而且我不是這方面的專家,但也許看看IdentityServer3讓你開始。這是使用「安全即服務」方法的良好解決方案,由該領域的幾位專家構建和維護。安全是一個非常深刻的話題,所以在選擇你的方法之前一定要徹底研究它。有很多工具可以幫助你陷入成功之坑,可以這麼說,但我認爲你仍然需要了解他們在做什麼以及爲什麼要正確使用它們。

相關問題