Blog


ASP.netテクノロジ概要

ASP.netは大まかに

  • ASP.net WebForm
  • ASP.net WebPages
  • ASP.net MVC

の3つにわかれます。

 

WebForm

WebFormとはサーバーコントロールというものを用いてWebサイトをつくります。

サイトファイルの拡張しは.aspx

デザイナーでコントロールを配置し、コードビハインドにロジックコードを記述することでWinFormに似た方法でプログラミングできます。

ただ、技術的にも古く、サーバーコントロールという概念が最近のWebテクノロジと合わないということもあってモダンな技術とは言えません。

33

 

 

WebPages

Razor構文と呼ばれる記述方法でhtml内にC#コードを埋め込むことで最近のWebテクノロジとC#の親和性の高いページを作れます。

ファイルの拡張子は.cshtml

WebMartrixなどの登場により、簡単に、素早く、軽いWebサイトを作れるので便利

たぶん今はこれが主流

44

 

 

ASP.net MVC

ASP.netのWebサイトをMVCフレームワーク(Model-View-Controller)で作ります。

Viewとロジックを異なったファイルに記述できるので大規模Webサイト向け。

簡単なサイトを作ろうと思ったとき、作らなければいけないファイルが多くなるので簡単なサイトを作るだけならWebPagesを使うべきだと思います。

 

 

 




VisualStudioでWebsiteを作る

Webサイトを作る

VisualStudioのメニューバーから[ファイル]→[新規作成]→[プロジェクト]を押します。

 

インストール済みテンプレートから、Web→VisualStudio2012と進み、[ASP.NET空のWebアプリケーション]をクリックします。

名前に[TestWebPage]と入力し、OKを押します。

1

Pageを追加する

プロジェクトが作成できたら、メニューバー→[プロジェクト]→[新しい項目の追加]を押します。

2

 

左のテンプレートから、[VisualC#]→[Web]→[Razor]を選択し、

Webページ(Razor v3)を選択。

名前を[index.cshtml]として追加を押します。

indexとはそのディレクトリへHttpアクセスが起こったときに最初にアクセスされるページの名前です。ほかにもDefault.cshtmlなどがあります。

3

Htmlを編集する

追加できたら、index.cshtmlを以下のように編集しましょう。

 

Webサイトを実行します。

ツールバーの緑色の三角形を押します。

4

 

Webサイトを実行できました。

5

 

普通のHTMLタグが使用できます。

 テスト実行ブラウザを変更する

また、ツールバーの緑色の三角形の横の三角形を押すことでインストールされているさまざまなブラウザでテスト実行することができます。

6

 

 




MediaCaptureで動画を撮るには

MediaCapture

カメラで動画をとるだけならCameraCaptureUIを使うと楽に動画を撮ることができます。

しかし、CameraCaptureUIは既存のUIを使用するので自分でキャプチャ部分を定義できません。

 

自由度が高く、独自のUIを使って写真を撮りたいならMediaCaptureを使います。

 

まずはデバイス列挙をしてどのカメラを使うかを選択します。

DeviceClass.VideoCaptureを指定することでカメラデバイスだけを列挙することができます。

DeviceClass.AudioCaptureを指定することでオーディオデバイスだけを列挙することができます。

今回は0番目のカメラ、0番目のマイクを使用します。

そしてMediaCaptureInitializationSettingでVideoDeviceIdとAudioDeviceIdを指定します。

 

現在カメラで写している画面をPreviewするためにcaptureElementコントロールをXAMLに配置し、

そのSourceにmediaCaptureのインスタンスを渡します。

 

WindowsPhoneの場合、Preview画面が270度回転してしまっているので270度回転させておきます。

 

ここまでで初期化は完了です。

 

StartPreviewAsyncでカメラの画面をプレビューします。

 

StartRecodToStorageFileAsyncで録画した動画をStorageFileとして保存します。

引数にMediaEncodingProfileを指定することでエンコードを指定できます。今回はmp4で作成します。

また、保存先として今回はカメラロールを指定します。

これで、録画が開始されます。

 

録画を終了する場合、StopRecordAsyncを使えば録画を終了できます。

 

StopPreviewAsyncでプレビューを終了し、DisposeメソッドでMediaCaptureのリソースを正しく破棄します。

 

サスペンド時に正しく終了処理をしましょう。

 

実行する場合、マニフェストファイルの機能タブにWebカメラとマイクのチェックが要ります。

今回はビデオの保存先をカメラロールにしているので画像ライブラリにもチェックをいれます。

There was no information available on whether students could voluntarily sign justbuyessay.com/ up for this course




MediaCpatureで写真を撮るには

MediaCapture

カメラで写真をとるだけならCameraCaptureUIを使うと楽に写真を撮ることができます。

しかし、CameraCaptureUIは既存のUIを使用するので自分でキャプチャ部分を定義できません。

 

自由度が高く、独自のUIを使って写真を撮りたいならMediaCaptureを使います。

 

まずはデバイス列挙をしてどのカメラを使うかを選択します。

DeviceClass.VideoCaptureを指定することでカメラデバイスだけを列挙することができます。

今回は0番目のカメラを使用します。

 

MediaCaptureInitializationSettingでどのデバイスを使うのかIdを設定します。

 

次にMediaCaptureをnewし、InitializeAsyncでカメラの初期化を行います。

このとき、先ほど作ったMediaCaptureInitializationSettingを引数にいれます。

InitializeAsyncに何も引数をいれない場合、どれか一つのWebカメラが使用されます。

 

現在カメラで写している画面をPreviewするためにcaptureElementコントロールをXAMLに配置し、

そのSourceにmediaCaptureのインスタンスを渡します。

 

WindowsPhoneの場合、Preview画面が270度回転してしまっているので270度回転させておきます。

 

ここまでで初期化は完了です。

 

Previewする場合はStartPreViewAsyncメソッドを呼び出します。

 

写真を撮るときは、CapturePhotoToStorageFileAsyncメソッドを呼び出します。

引数にImageEncodingProperties列挙体メンバーをいれることでjpgやpngを指定することができます。

今回はカメラロールに取得した写真を保存します。

 

終了するときは、

StopPreviewAsyncでプレビューを終了し、DisposeメソッドでMediaCaptureのリソースを正しく破棄します。

 

サスペンド時に正しく終了処理をしましょう。

 

 

実行するときはマニフェストファイルのWebカメラにチェックをいれましょう。今回はカメラロールも使用するので画像ライブラリにもチェックをいれます。

Research in which the students in a course do interact with participants https://www.pro-academic-writers.com/ outside of the course e




StorageFileをアプリデータとして取り込むには

例えば画像ファイルなどをアプリ内でキャッシュするためにアプリ内データとして取り込みたいとして、いちいちbyteデータに変換してまたApplicationData.LocalFolderないにファイルを作り書き込むぐらいならStorageFileごとコピーしてしまった方が簡単でコストがかかりません。

StorageFileはCopyAsyncメソッドで任意のStorageFolderにファイルをコピーすることができます。

 

画像データの場合、StorageFileごとApplicationData.Current.LocalFolderにコピーを作り、そのパスをImageコントロールのSourceに設定すると楽です。