1月8日(木)2コマ目

今日、やったこと

ASP.NET Core Razorページ

今日のホワイトボード

Webアプリケーション

Webアプリケーションは、クライアント-サーバーシステム。

広義のWebアプリケーションは「クライアントとサーバー間の通信プロトコルはHTTPまたはHTTPS」。

狭義のWebアプリケーションは上記+「クライアントはWebブラウザ」。

図 Webアプリケーション

この授業で作るWebアプリケーションは

  • プログラムはサーバー側だけで動く
  • クライアントはWebブラウザ
  • Webブラウザはボタンクリック等でリクエスト送信
  • Webブラウザは受信したレスポンスを表示するだけ

です。 


.Net環境でWebアプリケーションをつくるには

Webアプリケーション作成に特化したフレームワークASP.NET Coreを使うのが楽ちん。

ASP.NET CoreにはWebアプリケーションを作るための手段がいろいろと用意されている。

この授業ではその中から、Razorページを使ってWebアプリケーションを作成する。

図 ASP.NET Core

冬休み前に作ったDBアクセスアプリケーションで利用したODP.NET CoreはADO.NET Coreのオラクル特化版。


プロジェクト作成

慣れてしまえばなんてことはないのですが。

①VisualStudio起動

②新規プロジェクト作成

③テンプレート選択

選択するテンプレートはASP.NET Core Webアプリ(空)

似たような名前のテンプレートがあるので注意!!

図 プロジェクト作成 テンプレートは"ASP.NET Core(空)"


③プロジェクト名、保存場所指定

ここは今までとおなじ。

④追加情報

"HTTPS用の構成"のチェックを外す

デフォルトではチェックが入っているので注意。

図 プロジェクト作成 "HTTPS用の構成"のチェックを外す


⑤Program.cs編集

デフォルトではRazorページは使えない。Program.csを編集して、Razorページを使えるようにする。


Program.csはプロジェクト作成毎に編集する必要あり。めんどくさいが、同じ内容なので、コピペでOK。


プロジェクトにRazorページを追加する

RazorページはPagesフォルダ以下に配備する必要がある。

図 RazorページはPagesフォルダ以下に

①プロジェクトにPagesフォルダ作成

②PagesフォルダにRazorページを追加

 追加したRazorページの拡張子は .cshtml 。

コードブロック、コードナゲット

Razorページは

 HTMLファイル中にC#のプログラムを埋め込める

イメージ。

C#のプログラムを埋め込む手段として、

  • コードブロック
  • コードナゲット

がある。

コードブロックは

@{ではじまり、}で終わる。

{ }内にC#のプログラムが書ける。

@と{の間に

  • for(・・)
  • foreach(・・)
  • while(・・)
  • if(・・)

などが使える。

コードナゲットは変数やプロパティ、メソッド戻り値をHTMLに埋め込む。


以下のIndex.cshtmlはfor()で変数cntが0から9まで1ずつ増やしながら10回繰り返す。

繰り返し処理では<p></p>を出力。

コードナゲットで<p>と</p>の間に変数cntの値を埋め込む。


コードナゲットを使う際は、コードナゲットとHTMLの切れ目がわかるように、空白を上手に使うこと。

図 コードナゲットとHTMLの切れ目に空白を


実行すると

実行すると、サーバーが起動してクライアントからのリクエストが処理できるようにする。

が、さらに、クライアント側としてWebブラウザを起動して、サーバーにリクエスト送信まで行っている。

図 実行すると

サーバーにリクエスト送信すると、レスポンス(HTML)が返ってくる。

クライアント(Webブラウザ)はレスポンスを表示。

実行結果だけ見ると、Webブラウザだけで処理されているように見えるが、サーバーが動いていることに注意!!

次回は

Razorページの続き。


いい夢みろよ。



このブログの人気の投稿

1月23日(金)1、2コマ目

1月22日(木)2コマ目

2月17日(火)3コマ目