對不起,對於文本牆!帶獨立和軟件即服務模型的LOB App技術選擇
場景:
我們正在尋找什麼樣的技術對於需要支持「獨立」模式(前端+後端臺式機上運行),而且本地服務器模式下的LOB應用來選擇(後端安裝在本地服務器上),以及通過互聯網的軟件即服務(安裝在託管服務器上的後端)。
我們希望儘量減少開發工作,這就是我們選擇Silverlight前端的原因。我們打算爲所有3個模型重新使用相同的代碼庫。
LOB應用程序在數據輸入上很沉重,並且會在後端做一些數學工作。我們會有大量的意見。我們將有一個包含80多個表格的數據庫。我們目前擁有自己的DAL,使我們能夠使用MSSQL,MySQL和Oracle作爲DBMS。
目前的願景是在C#中使用Agile TDD Silverlight 4.0 MVVM應用程序作爲Caliburn框架的前端。並將WCF(RIA?)服務作爲後端(非Silverlight,純.NET 4.0)。這很適合不同的型號,因爲這只是後端安裝位置的問題。對於SAAS模型,我們在互聯網上有一臺後端可以駐留的服務器。
問題:
這聽起來是可行的,在所有的,或者是whishfull思想,我們可能對不同車型相同的代碼庫?
關於後端,我們正在研究WCF RIA服務,但希望擁有「消息安全性」,這在WCF的Silverlight實現中似乎不可行。 WCF RIA是一個有效的選擇嗎?或者WCF以任何方式在安全方面「更好」?
關於我們需要支持的不同DBMS。這是可行的WCF RIA服務?或者,我們是否更適合創建自己的BLL/DAL,並通過簡單的WCF展示自己?
有沒有人有沒有使用內聯SQL的多個DBMS設置的經驗,只是存儲過程?最初的應用程序在內聯SQL上很沉重,但我們想知道如何在不同的DBMS中只用Stored Procedures來維護這個應用程序。最後一個問題,就MVVM和安全性而言,爲了安全/代碼保護的原因,我們希望在後端「隱藏」儘可能多的邏輯。這將是一個邏輯的事情嗎?我們需要做TDD,所以我們需要能夠模擬模型,這意味着它需要在前端可用。但是我們需要所有的邏輯在後端。我們是否應該在前端使用「包裝器」來「鏈接」後端的「真實模型」?一種適合後端模型的1對1虛擬模型。還是有一種「更好」的方式來做到這一點?
在此感謝您提前給予我們任何這些科目的幫助!
Huron。
未使用最新版本,但建議您看看Rockford Lhotka的CSLA框架。 – Rikalous 2011-03-22 10:48:02
我確實是看CSLA Rikalous,但我從來沒有「說服」,這是一項我們可以/應該使用。也許我應該重新審視一下,現在你再次提到它。會把我的待辦事項列表:) – Huron 2011-03-22 12:53:23