簡體   English   中英

ASP.Net有哪些替代框架?

[英]What alternative frameworks for ASP.Net exist?

好的,我們當然都知道在ASP.Net上構建的兩大框架。 Webforms和MVC。 這兩個大型和微軟制造的框架有什么替代品嗎?

我相信OpenRasta有一些極其輕量級的東西,它們都是獨立的,但我不確定。 還有其他類似的東西嗎?

我之所以這么說是因為我一直在考慮創建一個獨立於Webforms和MVC的框架,我想看看其他人是如何處理這個問題的。

FubuMVC是另一種流行的(和主動的)替代品http://fubumvc.com/

Mono Rail是另一種MVC框架。

新的微軟產品/項目WebMatrix似乎基於一種完全不同的方法(雖然我不詳細了解它)。

查看Web Forms MVP( http://webformsmvp.com/

它是ASP.Net WebForms的MVP框架。

事實上,OpenRasta是所提出的答案中唯一可以非常愉快地用完asp.net的答案,並且如果你願意,它仍然可以運行在它之上。 並且它足夠穩定,在本月3.0工作開始之前,2.0分支需要很少的補丁。

我開發了ASP.NET MVC的替代品。 您可以獲得相同的松散耦合和關注點分離,但區別在於您如何構建項目。

我的博客上有幾個視頻,框架的源代碼,示例項目和一些VS.NET加載項(New Project項目,New Builder和New View)。

Quartz for ASP.NET

一些關鍵的區別特征是1.模板只是html - 沒有代碼與模板混合2.模板因此可以跨視圖重復使用,網站設計師可以在他們選擇的設計工具中設計模板3.強類型代碼(沒有ViewData和東西)所以你得到intillisense,編譯時間檢查,F12導航等.4。你構建頁面作為視圖的組合而不是內向外的方法5.視圖可以被視為“真正的”類。 6.一切都得到了遵守,因此沒有運行時編譯

其他一些差別因素也是如此。

我的網站/博客也是使用Quartz for ASP.NET Matlus構建的 - 互聯網技術和軟件工程

我曾經開發過一個小型MVC框架,當時MVC在Mono上運行不正常(或者至少不穩定)

它被稱為BarelyMVC,並在bitbucket獲得BSD許可。

好吧,基本上BarelyMVC雖然可以用於所有項目,但可能不是最好的工具。 但是,一般來說它有這些功能:

  • MVC的所有功能,沒有學習曲線或架構解決方案
  • 完全控制生成的HTML。 視圖基本上只是具有動態位的預處理HTML。
  • 路由以簡單一致的方式支持友好URL。
  • 少魔法。 很容易看出會發生什么以及為什么

所以,總結一下。 即使我稱之為MVC,它實際上更像是VC,視圖和控制器。 視圖當然存在並且非常輕量級。 控制器基本上是HttpHandler類。 然而,模型並沒有真正的“需要”。 使用BarelyMVC很容易通過模型抽象,但它們實際上是可選的。 沒有假設每個HttpHandler下面都是一個數據模型。 雖然這會導致代碼變得更加混亂,但我發現當人們試圖解決強制執行的MVC架構時會遇到一些非常糟糕的代碼。 無論如何都會發生解決方案,所以我只是這樣做,所以我的框架非常容易解決。 我給你足夠的力量射擊你的腳,但我也確保你非常清楚你將要知道。

它由三個主要組成部分組成:

  • ViewEngine - 使用T4制作的非常棒的視圖引擎。 您的所有視圖都是靜態編譯和靜態類型。 因此intellisense適用於您的觀點。 沒有更多的ViewData["typo"]錯誤。
  • 路由器 - 一個功能強大的路由引擎,可以將URL映射到您的HttpHandler,同時允許SEO和人類可讀的友好URL
  • FSCAuth - 一種簡單安全的身份驗證框架,非常容易實現到任何類型的數據庫中。

當然,這3個組件中的每一個也是完全可選的。

我在BarelyMVC創建了自己的博客,我認為這是BarelyMVC很酷的一個非常好的例子。 它的源代碼也是bitbucket

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM