背景: 我是一個在.Net平臺上工作的中間Web應用程序開發人員。我的大部分工作都是由我的同事或上級爲我定義的,我遵循指示並完成工作完全沒有問題。Web應用程序體系結構問題
手頭的任務: 我最近被一位老朋友要求重做他的web應用程序。他的應用程序非常陳舊,而且他總是被打破。有問題的應用程序是庫存/ CRM應用程序,目前每個客戶都需要新安裝應用程序(通常通過在同一服務器上的不同域上部署並指向新數據庫來完成)。
目前,如果任何客戶想要對錶格進行任何修改(如附加字段,新功能等),我的朋友就會進入並手動將這些字段添加到表單,腳本,數據庫等。因此,此應用程序的所有安裝都是獨特。沒有一個單一的源代碼庫,沒有一個單一版本的這個應用程序。一般而言,新功能會加入到其他網站中,但仍按個別網站逐個網站完成。
我將在非常模塊化的基礎上接近這一點。最初,我將編寫一個模塊來查詢外部Web服務的某些數據,並顯示和存儲它,並定期自動更新它。下一個模塊可能用於存儲和顯示庫存數據。這種方式我想隨着時間的推移重複他的應用程序的當前功能集100%,但增量。
百萬美元的問題
我想使應用程序具有用戶 配置表單字段。用戶 應該能夠轉到管理員 頁面,創建特定類別的新表單頁面,然後在那裏指定 他想要的字段。他 可以說「創建一個新的文本字段 叫編號,並使其成爲 要求」,並且將得到保存在某個地方 。所有形式將 動態地呈現在用戶已經配置了什麼基於 到畫面是 這一個很好的方式去了解 問題,因爲他不知道客戶可能需要什麼樣的表格和 因此能夠存儲和顯示 任何類型的表格數據?我應該在這裏遵循什麼樣的 設計模式?
我熟悉asp.net和 .net framewor K的一般和 了JavaScript, HTML,Silverlight中,jQuery的體面知識,C#等 等我能工作,我的辦法解決網絡 應用程序的一個好辦法,但我不 確定什麼樣的框架或技術 的我應該用來完成這個 任務。 ASP.net 3.5 webforms將成爲 的路要走嗎?或者我應該看看ASP.NET MVC的 ?我是否使用jQuery和ajax來完成 前端和 後端的解耦?或將一個正常的asp.net 頁面與一些噴濺的ajax 拋出與代碼隱藏 是當天的順序?
只是在我開始之前尋找一般建議。
我目前正在考慮爲客戶端動畫,用戶界面,操縱和數據驗證使用ASP.NET 3.5 webforms,jQuery,以及用於後端的sqlserver + .net或wcf webservice。
你的意見是一如既往的讚賞。
你是如何管理「允許每個合作伙伴選擇他們自己的一組輸入字段,屏幕,並命令應用程序的流程滿足其個人需求」的部分? – 2009-08-19 08:20:23
我在數據庫中有表格,控制和控制項目,這些項目被組織到可以分配給每個最終客戶端的集合中。每個webform都從一個類繼承而來,該類包含代碼以將配置從數據庫中取出,並以正確的順序構建內容並加載到中繼器控件中。然後,當使用按下繼續時,另一種方法通過控件集合保存到數據庫的值。最後,它將檢查數據庫中的流配置,加載下一個表單並重新開始構建內容。 – JustABitOfCode 2009-08-19 09:49:04