0

PHP で記述されたカスタム cms を .net c# に切り替えようとしています。cms を学習プロジェクトとして使用することを考えていました。C#、NHibernate ORM レイヤー、mssql、mvc3、jquery を使用します。

コマーシャルやオープンソースの cms がたくさんあることは承知していますが、それでも、このようなプロジェクトに取り組んでいる新しいテクノロジーを学ぶために、自由な時間を費やすつもりです。

それで、cmsドメインモデル、有用なリンク、アイデアなどの作成に関するアイデアを喜んで共有してくれる人はいますか.

ありがとう

4

1 に答える 1

2

本当に基本的な CMS は、次の 3 つの要素で構成されます。

  • 「ページ」を保持する 1 つのデータベース テーブル。テーブル構造は「名前」と「内容」
  • タイプのリクエストを/cms/pagename固定コントローラに変換するルート、メソッドが呼び出さcmspagename、パラメータとして
  • 埋め込み可能な html エディター

現在、「ページ」を呼び出す方法は 2 つあります。作成モードまたは表示/編集モードのいずれかです。

「作成」モードでは、ページが要求されますが、まだデータベースにはありません (例: cms/announcement1)。このモードでは、html エディターで構成されるビューを作成し、送信時にページをデータベースに永続化します。

「表示」モードでは、ページが要求され、データベースに存在します。必要な書き換えを実行し (たとえば、フォームの内部リンクを[cms/pagename]完全にルーティング可能な http アドレスに書き換える)、コンテンツをレンダリングします。

ユーザーがページの編集を許可されている場合は、「編集」ボタンも表示されます。これにより、ページが読み込まれ、編集できるようになった状態で HTML エディターが呼び出されます。

以上です。

多くの追加要素 (キャッシュ、さまざまな組み込みページ タイプ、埋め込み画像、YouTube、事前に書式設定されたテキスト) などがありますが、それらはすべてオプションであり、コアが既に実装されている場合は新しい機能を導入できます。

上記の構造に従って単純な CMS を作成すると、それはより大きなソリューションの一部となり、今まで数百回の展開に成功しています。カスタム CMS の利点は、非常にシンプルで簡単に保守できることです。

于 2012-04-06T19:53:44.230 に答える