ASP.NET勉強会
Amebaでブログを始めよう!

第1回 初心者向けASP.NET勉強会(全3回)

Microsoft ASP.NETによるWebアプリケーション勉強会を開催します。

~ 対象者 ~
  • プログラミング未経験者
  • Webプログラムの基礎知識を知りたい方
  • PHP、Javaは分かるが.NET技術に興味のある方
~ 勉強会内容 ~
  • Visual Studio Web Developerを利用した簡単なアプリケーションを作成します。
    動作確認するまでデモします。受講者も一緒に操作して感覚をつかんでください。
  • Webアプリ、ASP.NETの基本的な考え方について説明します。
~日程など~

お申し込み・お問合せはこちら

*twitterで質問・申し込みする
*mixiで質問・申し込みする

□■□■□■ 関連講座(この講座の前に開催します) □■□■□■□■□■□■ □■□■□■

第1回 Javaオブジェクト指向再入門講座(SJCP対策付き)
□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■

第3回 初心者向けASP.NET勉強会ログ

第3回は画面遷移とセッション管理について説明しました。


クラウドが最近はやっています。私も使っていますが、gmailに代表されるWebメールはとても便利ですが、ログインしてからログオフするまでずーっと自分のデータを操作できるのはなぜなんだろうと疑問に思う方はいませんか?

Webの世界は基本的に1回こっきりの世界です。RequestしてResponseが帰ってきたらサーバはすべてを忘れてしまうのです。だから、もう一回、アクセスしても前にアクセスしたことなんて忘れています。
なのに、ログインしてからログオフするまで、メールを書いたり、読んだり、削除したり、整理したり、、、と全部、ログインした人の情報を操作できます。当たり前じゃん。。と言われたらおしまいですが、これをどうやって実現しているのかを今回、説明しました。

今回はログイン画面を作って認証を行い、ログインできたら前回作ったTwitter画面を表示させ、ログインした名前を右上に表示させ、Tweet(発言)したときにはユーザ名をデータベースに書き込みます。


なのでログイン用のWebフォーム(TwitterLogin.aspx)とTwitter画面(TwitterFake.aspx)との画面遷移処理と、ログインした情報をずっと持ちまわる必要があります。

まず、ASP.NETは自分自身にしかアクセスできない特徴があります。これをポストバックと言います。
なので、ログインボタンを押しても、サーバで処理しなければそのままログイン画面が表示されます。

これを踏まえて画面遷移は2つの方法があります(図1)

$ASP.NET勉強会
図1 RedirectとTransfer


1.Redirect方式
Redirectはいったん、クライアントに処理を戻しクライアントが別サイトへアクセスする手法。
主に他のサーバに遷移する場合に使用する。データの受け渡しはGETで行う。

2.Transfer方式
サーバ上で他のWebフォームにアクセスする方法。他のWebフォームは呼び出されるとPageLoadイベントが発生する。PageLoad内で遷移元のPageクラスのメンバにアクセスできるため、データの受け渡しが可能。

1,2どちらとも画面間の受け渡しは可能です。ただし、これではたとえばログイン情報のようにずーーっと受け渡していきたい情報はどうするのか?
ここで便利なのが、Sessionといわれる考え方です(図2)


$ASP.NET勉強会
図2 Sessionの考え方

Sessionとはサーバ上でブラウザ単位にデータを保持する考え方です。
冒頭にサーバはクライアントからの接続が遮断されるときれいさっぱり忘れてしまうと言いました。
これを解決するための技術で、サーバからIDを採番して、クライアントに返します、これをSessionIDといいますが、このIDをクライアント(ブラウザ)はサーバにリクエストするときに毎回、SessionIDを送ります。なので、サーバは常にどのクライアント画から来たのかわかるのです。
これにより、セッションデータと言われるデータをサーバ上で格納すれば特定のブラウザの情報として認識できるようになります。ログイン情報などは以下のようなコードによって、セッションデータに保持可能です。

Session("UserID") = "toyoshima"

Sessionデータは連想配列(ハッシュテーブル)という構造でできていて、キーに対して値を設定するという形をとります。なので、以下のコードで上記で設定した"toyoshima"という文字列を取得できます。


Dim user As String = Session("UserID")


※第3回は時間切れでここで終了しました。しかしながら、まだ話してないことがありますのでいずれどこかの機会でお話しします。

<今回できなかった話>
・ViewStateスコープ
・Applicationスコープ

第3回 初心者向けASP.NET勉強会

Microsoft ASP.NETによるWebアプリケーション勉強会を開催します。

~ 対象者 ~
  • プログラミング未経験者
  • Webプログラムの基礎知識を知りたい方
  • PHP、Javaは分かるが.NET技術に興味のある方
~ 勉強会内容 ~
  • Visual Studio Web Developerを利用した簡単なアプリケーションを作成します。
    動作確認するまでデモします。受講者も一緒に操作して感覚をつかんでください。
  • Webアプリ、ASP.NETの基本的な考え方について説明します。
~日程など~
  • 開催日時 : 8 / 15 (日)  13:30~15:30
  • 場所 : 池上会館 小研修場
  • 参加費 : 2,000円
  • 持ち物 : ノートPC
     ※事前にVisual Studio Web Developerをインストール願います。インストール方法はこちら
  • 定員 : 10名
    (8/5までに3名以上の申し込みがない場合は中止します)

お申し込み・お問合せは以下のいずれかを選択してください。

*メールフォームで質問・申し込みする
※メールアドレスの記入が必要です

*ATNDで質問・申し込みする
※ メールアドレスの記入が不要です。mixi, google,yahoo等のアカウントがあれば簡単に申込みできます

*twitterで質問・申し込みする
※ twitterアカウントが必要です。私宛にダイレクトメッセージを送ってください

*mixiで質問・申し込みする
※ 私宛にメッセージを送ってください。