2012-07-09 48 views
1

我將把Visual C#應用程序轉換爲ASP.NET。對於這個任務,我想先創建架構,然後再開發程序。那麼,我怎樣才能將我的邏輯分解成圖書館?我知道,它很基本的問題,但人們對此非常擔心,因爲我一個人工作,我需要幫助..如何在ASP.NET中設計應用程序體系結構

+0

我想鏈接幫助you.http:// WWW .dotnetfunda.com/articles/article71.aspx – 2012-07-09 04:17:00

回答

1

Web應用程序幸運的是,現有的應用程序已經使用SOLID OO原則編寫。在這種情況下,您可以將您的業務邏輯與用戶界面分開。如果情況並非如此,那麼我將首先爲您的業務邏輯創建一組乾淨的接口,並對它們進行一些單元測試。接下來的事情是MVC針對Web應用程序等斷開連接情況進行了優化。取決於您使用Razor和測試項目創建的MVC3或MVC4應用程序的基礎結構。當您構建您的項目時,請儘量進行單元測試。這將提高代碼的可靠性,並啓用FxCop靜態代碼分析。接下來你需要考慮的是你想要你的Web UI如何交互。如果您的用戶是Intranet用戶,也許您可​​以避免在模型中使用腳手架功能和數據註釋。如果您的應用程序要打動外部客戶,那麼您需要更豐富的用戶體驗。在這種情況下,請考慮使用knockout在客戶端瀏覽器上創建MVVM模式。這裏是一個鏈接http://www.codeproject.com/Articles/305308/MVC-Techniques-with-JQuery-JSON-Knockout-and-Cshar

當你構建控制器時,他們有一種變胖的趨勢(這是SRP的後果)考慮使用諸如面向方面編程的技術,使用編譯器屬性和過濾器來保持代碼乾燥和清潔。

您需要做的很多事情取決於您的組織。例如,如果您在使用SOA策略的組織中工作,那麼您將需要與架構師討論如何使用WebAPI vs WCF。另一個需要考慮的方面是Microsoft將來如何支持客戶端腳本。據猜測,我希望他們會製作工具來簡化javascripting方面的工作。就目前我正在學習HTML5,以便像jQuery,jQuery的UI,AJAX javascript函數庫,使豐富的用戶體驗

我希望這有助於...

+0

你的回答確實可以幫助我理解我的問題..但有人認爲是使用MVC還是3/N-tier架構?因爲,我是新程序員,我有一些方便開發Web窗體的經驗,但我對MVC模式沒有任何意見(瞭解概念,但不知道如何進行編碼)。 我已經閱讀了很多關於如何選擇的文章:Web Forms或MVC?總之,我總結說,它不重要你使用什麼,但它應該完成你的工作。 你能幫我解答嗎? – 2012-07-10 00:38:24

+0

MVC有一個學習曲線,但它是值得的,因爲您的代碼將更易於維護,並且您學習的技能將適用於其他項目。如果你有問題,你仍然可以添加aspx文件到你的MVC項目,而不是我會推薦這個,因爲它打破了MVC模式。採取敏捷的方法,首先處理危險的事情,並「早日失敗」(希望根本不會)。採取一個示例MVC演示,逐步修改,看看你的應用程序應該是什麼樣子。如果你發現它不起作用,你可以回到你以前的編程風格。 – 2012-07-10 05:15:01