MonoRail (oprogramowanie)

Projekt zamku:MonoRail
Deweloperzy Projekt zamku
Wersja stabilna
2.1 RC / 17 marca 2011 ( 17.03.2011 )
System operacyjny Międzyplatformowe
Typ Struktura aplikacji
Licencja Apache 2.0
Strona internetowa www .castleproject .org /projects /monorail

MonoRail (wcześniej znany jako Castle on Rails ), składnik projektu Castle , to platforma aplikacji internetowych typu open source zbudowana na platformie ASP.NET . Zainspirowany Ruby on Rails Action Pack, MonoRail różni się od standardowego programowania ASP.NET Web Forms wymuszając separację problemów przy użyciu architektury model-widok-kontroler (MVC). Framework jest powszechnie używany w połączeniu z Castle ActiveRecord , zbudowaną warstwą ORM NHibernate . W styczniu 2010 roku została wydana wersja 2.0 MonoRail, jednak wiele projektów korzysta z wersji głównej źródła, aby skorzystać z nowych funkcji bez czekania na oficjalne wydania.

Chociaż nazwa projektu to MonoRail, nie ma on żadnego powiązania z projektem Mono .

Jak to działa

Struktura mapuje żądania sieci Web na „akcję”, która jest zwykłą metodą .NET na kontrolerze. Kontroler jest odpowiedzialny za wywoływanie usług biznesowych i kontrolowanie przepływu aplikacji. Kiedy nadchodzi czas wysłania odpowiedzi sieciowej do klienta, kontroler ustawia szablon widoku do renderowania, umieszczając dane w specjalnym obiekcie słownika znanym jako „Torba właściwości” i deleguje renderowanie szablonu do mechanizmu widoku.

Mechanizm widoku renderuje szablon do strumienia odpowiedzi, wykorzystując dane w pakiecie właściwości podanym przez kontroler. Na tym etapie widok nie może uzyskać dostępu do żadnej innej warstwy aplikacji, izolując widok od logiki aplikacji.

Zobacz silniki

Głównym silnikiem widoku używanym w MonoRail jest NVelocity , oparty na bibliotece Apache Velocity . NVelocity jest dostarczane z prostymi blokami sterującymi, takimi jak instrukcje if i pętle foreach . Szablony widoku NVelocity to pliki tekstowe z rozszerzeniem „.vm”.

Inne używane silniki widoków:

  • Brail , oparty na języku Boo . Będąc językiem .NET, silnik widoku brajlowskiego ma większe możliwości, ponieważ programista widoku może korzystać z biblioteki klas podstawowych . Jednak moc ma swoją cenę, ponieważ otwiera możliwość zrobienia zbyt wiele w widoku, pozostawiając część odpowiedzialności za Rozdzielenie problemów w rękach programisty. Szablony widoków to pliki tekstowe z rozszerzeniem „.brail”.
  • AspView , aparat widoku, który używa języka C# jako języka skryptowego i używa wstępnie skompilowanego podejścia, w którym wszystkie widoki są wstępnie kompilowane do zestawu .NET przed wdrożeniem. Szablony widoków to pliki tekstowe z rozszerzeniem „.aspx”.
  • WebForms ViewEngine umożliwia wykorzystanie niektórych możliwości formularzy internetowych w aplikacjach MonoRail. Korzystanie z mechanizmu widoku WebForms jest dość rzadkie i jest zalecane tylko w fazie migracji z istniejącej aplikacji Web Forms do aplikacji MonoRail. Szablony widoków to pliki tekstowe z rozszerzeniem „.aspx”.
  • StringTemplate to najbardziej rygorystyczny silnik widoku pod względem MVC.
  • Spark View Engine to nowy silnik widoku popularny wśród programistów ASP.NET MVC, obsługuje również MonoRail.

Inne silniki widoków

Budowa innych silników widoków jest dość prosta i bezpośrednia. Brail , StringTemplate i AspView zostały stworzone przez niezależnych programistów na potrzeby ich własnych potrzeb.

Inne silniki widoków to:

  1. ASPX
  2. Iskra
  3. NHaml
  4. NDjango
  5. Hasic
  6. Gejtaw
  7. Bellevue
  8. Ostre płytki
  9. Szablon ciągu
  10. Uderzenia skrzydeł
  11. SharpDOM
  12. Brzytwa
  13. Lazur

Dalsza lektura

  •   James Avery, Jim Holmes, Power Tools dla programistów Windows , O'Reilly Media, 2006, ISBN 0-596-52754-3 , s. 963–972 (18.6 Uproszczenie tworzenia stron internetowych za pomocą Castle MonoRail)
  •   Steven Sanderson, Pro ASP.NET MVC Framework , Apress, 2009, ISBN 1-4302-1007-9 , s. 12 (porównania z MonoRail)

Linki zewnętrzne

Zasoby

Blogi na MonoRail