Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ASP.NETでブログアプリの開発

ソース

  • Udemy:【入門者向け】ASP.NET MVCでWebアプリ開発のノウハウを学ぼう!

作業進捗

プロジェクトの作成

  • asp.netフレームワーク,C#を選択
  • MVCを選択
  • NuGetパッケージの管理からentityframeworkインストール

モデルの準備

  • Atricle.cs作成
    • ID,タイトル,本文,カテゴリー,投稿日,更新日,コメントのコレクション
  • Comment.cs作成
    • ID,コメント,投稿日,対応する記事,記事のIDを持つ
  • Category.cs作成
    • ID,Category名,記事のコレクション,記事の個数
  • 作成したモデルをDBと接続するためにBlogContext.cs作成
    • 上3つを持つ
    • ツール->nugetパッケージコンソールからmigration実行
    • Migrations/Configuration.csが作成される

認証機能の実装

  • Modelの作成
    • LoginViewModel.cs作成
    • CustomMembershipProvider.cs作成
    • CustomRoleProvider.cs作成
    • ユーザー管理機能は省略するため固定文字列で認証実装
  • Controllerの作成
    • LoginController.cs作成
  • Viewの作成
    • LoginController.csIndex()を右クリックしてViews/Login/Index.cshtml作成

ArticlesControllerの実装

  • Create,Edit,Delete実装
  • Articleが追加されたときにCategoryの管理もこのコントローラで行う

CategoriesControllerの実装

  • Create,Editはない
  • Delete実装

共通レイアウトの実装

  • Viewから作成
  • 参照のNugetパッケージからbootstrapインストール

### viewの実装

  • ArticlesのView
  • CategoriesのView
  • LoginのView

ルーティング、認証の実装

  • App_start/RouteConfig.cs変更
  • Web.config変更
  • 動作確認してバグ修正した

サイドメニューの実装

  • 共通処理としてCategoryFilterAttribute.csをCOntroller内でクラスとして実装
    • OnActionExecutedメソッドは実行が終了すると毎回呼び出される
  • ArticleController.csに適用する
    • アノテーションするときは[CategoryFilter]のようにAttribute取り除く
  • CategoriesController.csに適用
  • これによって各アテンションメソッドが実行された後にOnActonExecutedが呼び出されてdbからviewbagにカテゴリーがセットされる
  • 次に共通レイアウトページ編集

カテゴリーの入力候補の表示

  • Articleのcreateとeditのビューを編集
    • optionタグで表示するようにする

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages