オープンソースCMS「DotNetNuke」のセットアップ
前回はMicrosoft Web Platform Installerを利用して、DotNetNukeとWebMatrixをインストールする方法を紹介した。今回は、DotNetNukeのインストール方法を紹介する。
ブックマークされました!
ブックマークがエラーになりました。もう一度お願いします。
作者 Jonathan Allen , 翻訳者 尾崎 義尚 投稿日 2011年12月8日
ほとんどのアプリケーションは、依存性注入(dependency injection)フレームワークが完全に意味があるとはいえない。通常は、最初から最後まで手動ですべての依存性をつなげてても全く問題はない。しかしASP.NET MVCの場合は、実際にはひとつの起点ではない。それぞれの依存性は、サーバー、ユーザーセッション、コントローラーや個々のリクエストにスコープしている。多くの競合ライフサイクルにおいてDIフレームワークは、不要な問題から目をそらして、本質的な組織ツールに移行している。
重要な利用局面としてこれを見ると、MEF 2には、MVCの依存性を扱うための機能が含まれている。すべては、規約ベースアプローチを使って完結しており、追加の構成ファイルは必要ない。
MEF 2を使う場合、Partsと呼ばれる新しいフォルダが必要になる。ここにはコントローラがデータアクセス、ロギング、他のサイトやWebサービスとの通信などで必要になるクラスを保持しておく。コントローラがどのパーツを必要とするかを指定するのは、単純にコントローラのコンストラクタにこれらのリストを渡すだけである。指定したパーツが他のパーツをリクエストしたときには、同じことが行われる。
デフォルトでパーツは、単一リクエストに対するライフタイムを持ち、各パーツでひとつだけ作成されるため、いくつのコントローラや他のパーツが必要になったかは問題ではない。一度リクエストが完了すると、それが必要としたあらゆるパーツのDisposeが呼ばれる。もしパーツのライフサイクルをアプリケーションと同じにする場合、ApplicationShared属性が適用される。詳細な登録オプションが提供されているが、属性のタグ付けは、ほとんどの利用局面で処理する必要がある。
他のアセンブリからのパーツは、Application_StartでCompositionProvider.AddPartsAssembly関数を使うことで、含めることができる。すべてのパーツの名前空間に“Parts”識別子が含まれている必要があることに注意して欲しい。BCLチームは次のように記述する。
すべてのパーツにParts名前空間を使うことは少し過剰に見えるが、すべてのクラスがパーツであるわけではないことを思い出させてくれます。パーツは、アプリケーションを作りあげる‘粗粒’のかたまりです。重要な機能を持つアセンブリは、たいてい、アセンブリの中のパーツが使うか、パーツ自身は使わない大量の補助クラスを持ちます。
モデルバインダーを表すパーツは、ModelBinderExport属性と、それが適用されるモデルの型でタグ付けする必要がある。
Actionフィルターはまた、コンポジションに参加することができる。MEFコンポジションプロバイダによって作成することはできないが、MEFによってフィルターされたプロパティを持つことができる。Import属性でMEFで管理されたプロパティとタグ付けすることができる。
ASP.NET MVCとMEF 2のサンプルは、CodePlexで提供されている。
前回はMicrosoft Web Platform Installerを利用して、DotNetNukeとWebMatrixをインストールする方法を紹介した。今回は、DotNetNukeのインストール方法を紹介する。
DotNetNukeは、Windows Serverで動作するCMS(Contents Management System)である。この記事ではWeb Platform Installer を利用して人気CMS「DotNetNuke」と無償Web開発環境「WebMatrix」のインストールする方法を紹介する。
クラウドコンピューティングを前提とした大規模データ技術が利用可能となってきています。Big Dataが一過性のブームで終わるかどうかにかかわらず、スケーラブルな分散アーキテクチャーの基盤はデータベース技術に主導されつつあります。RDBとORM主体のエンタープライズシステムは、HadoopやNoSQLとの組み合わせにより複合的なデータモデルに発展しました。
2011年12月8日~2011年12月9日に、ロンドンのSkills Matter eXchangeにて開催された「Groovy & Grails eXchange 2011」の参加報告を、日本Grails/Groovyユーザーグループのメンバーが3回に渡って紹介します。
Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します
去る1月12日、定理証明支援系ツールCoqの初心者向けチュートリアルが開催さ れた(http://kokucheese.com/event/index/23667/)。今後も2月2日 (http://kokucheese.com/event/index/23744/)、2月9日、2月16日と引き続���開 催されていく予定である。本記事では、開催の様子をレポートする。
Neal Gafter氏はOracleによるJava買収の影響に関する議論、Javaにセグメンテッドスタックやメタオブジェクトプロトコルを追加することについての主張、そしてJavaとC#との比較について話をしてくれた。
No comments
スレッド表示 返信