Core、C#等関連の独学用メモこの広告は、90日以上更新していないブログに表示しています。Coreおもむろに始まるお勉強ブログです。MVCをお勉強する試み。知識は無く、意識も低く、内容も保障できません。MVCのサンプルを眺める1回目です。Coreなのにターゲットフレームワーク4.5.2が選択されているのが違和感ですが無視。1.1を選択し、Webアプリケーションを選択してOKボタン。サンプルを眺めるのが目的なので「空」ではなく、Webアプリケーションを選択します。勝手に色々含まれたサンプルサイトが作成されます。実行すると普通にWebサイトが表示されます。習うより慣れろということでファイルを上から順に見てみます。Services接続済みサービスが表示されるようです。Insightsが表示されています。Properties\launchSettings.json開発サーバ環境情報が記載されたjson設定ファイル。Webアプリケーションプロジェクトのプロパティページで、プロパティや起動、SSLや認証等を変更すると反映されます。faviconと静的コンテンツ置き場。アクセスパスとしてはwwwrootフォルダ配下ではなく、root階層で参照されます。\samplesite\wwwroot\css\site.cssならば、http://localhost:777/css/site.cssとなります。Startup.csのConfigureメソッド内で、app.UseStaticFiles();っと呼び出してるところでその辺設定されているようです。wwwrootが未指定時既定値となります。静的コンテンツのキャッシュ保持期間等ヘッダ情報の追加が必要な場合に思い出せればいいようです。Docs続いてwwwroot配下の各フォルダを見てみます。wwwroot\css\site.cssCSSです。後述するbundleconfig.jsonでBundle(圧縮みたいなの)指定されています。ビルド時はBundleによってsite.min.cssと小さく読みにくい形になります。開いてみるとよくわからないXMLで何か指定されています。Wikipedia先生によれば、画像のVectorデータのようです。Wikipedia画面のサイズに関わらずキレーに画像を表示したりするみたいです。いうものだと理解しておきます。wwwroot\js\site.jsjavascriptです。サンプルでは何も記述はありません。cssと同様にBundleによって圧縮されます。wwwroot\libbootstrap、jquery3つが入ってます。bootstrapはレスポンシブデザインのCSSフレームワークです。他bootstrapが必要とするものが色々格納されています。jqueryは知る人ぞ知るjQueryです。これも後述\Views\Shared\_Layout.cshtmlで参照されてますね。深く考えずに次々眺めていきます。favicon.icoはアドレスバーやタブに表示されるサイトアイコンです。ControllersMVCのCです。サンプルではHomeControllerしかありません。MVCのM、Modelも特にCRUDが無いためか作られていません。(認証設定した場合は作られるかもしれません)ViewsMVCのVです。共通部分のShared配下のView達があります。一応中身をみてみます。Views\Shared\_Layout.cshtml共通レイアウトとなるViewです。Webフォームで言うMaster。Views\_ViewStart.cshtmlでLayout指定されています。Views\Shared\_ValidationScriptsPartial.cshtml開発環境、ステージング/リリース環境で検証用jQueryを分けてる部分Viewですが、どこから指定されてるんだろう?ってサンプルには指定が無いみたいですね。入力するページが無いし。検証が必要な時は読み込めばよろしいのでしょう。Views\Shared\Error.cshtmlStartup.csで指定されてるステージング/リリース環境用エラーViewです。View\_ViewImports.cshtmlそういう名前で決まってるView用インポート的な共通Viewです。Helperを指定しています。Helperってのはタグに指定されている謎の属性たちです。_Layout.cshtmlのタグ内にasp-なんとかっていうHTMLっぽくない謎の属性がたくさん指定されていますがそいつらの事です。asp-action="Index">Home</a></li>のasp-controller,asp-action等のことです。HomeControllerのIndexアクションへの遷移って何となくわかりますね。View\_ViewStart.cshtmlView開始時によみこまれる約束なViewです。サンプルでは上述の共通レイアウトView、_Layout.cshtmlを指定しています。appsettings.json設定ファイル的jsonファイルです。Web.configはさようならなのでしょう。ググってみるとフロントエンド用のパッケージマネージャとのこと。クライアントサイド向けNuGet的なものみたい。ソリューションエクスプローラーの依存関係配下に指定があります。Bower配下でbootstrap、jQueryが管理されていて、NuGet配下でAspNetCoreやMVCに必要な参照が管理されているみたい。bundleconfig.jsonいつの間にか追加された機能Bundleの設定。cssやjsをまとめて小さくしてくれます。Program.csメソッドチェーンで色々呼ばれてますが一旦は気にしません。Startup.cs開始時に実行されるお約束クラスです。さようならGlobal.asaxなのでしょう。設定とかサービスとかエラーハンドリングとか。MVCで大切なroutingもここですね。これで一通り目を通したつもりになっておきます。細かいことはこれから勉強できたらいいなって感じです。月別アーカイブはてなブログをはじめよう!autodidactさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。