24
わわわわわわ わわわわわ #23 - C# Day MVP for VB わわわ C# わわ 2008.08.09 わわ わ

MVP for VB が語る C# 入門

  • Upload
    ogden

  • View
    51

  • Download
    0

Embed Size (px)

DESCRIPTION

MVP for VB が語る C# 入門. 2008.08.09 初音 玲. 自己紹介. index. index. はじめての C#. 初期自動生成コード. イベントプロシージャ. HelloWorld.Designer.cs. this.Shown += new System.EventHandler ( this.HelloWorld_Shown );. Hello World!. namespace HelloWorldCs { public partial class HelloWorld : Form { - PowerPoint PPT Presentation

Citation preview

Page 1: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

MVP for VB が語る C# 入門

2008.08.09初音 玲

Page 2: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

自己紹介

Z80アセンブラ

6809アセンブラ F-BASIC

N88-BASIC FORTRAN 77 COBOL

LISP Turbo Pascal

Prolog KABA

C言語 Mシリーズアセンブラ PL/I

VB3.0~ PL/SQL T-SQLVB2005/200

8

Page 3: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

index

Microsoft Visual C# の第一印象

SQL Server を使ってみた

Web アプリを作ってみた

Visual Basic と Visual C#

Page 4: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

index

Microsoft Visual C# の第一印象

SQL Server を使ってみた

Web アプリを作ってみた

Visual Basic と Visual C#

Page 5: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

はじめての C#

Page 6: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

初期自動生成コード

Page 7: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

イベントプロシージャ

this.Shown += new System.EventHandler(this.HelloWorld_Shown);HelloWorld.Designer.cs

Page 8: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

Hello World!

namespace HelloWorldCs{ public partial class HelloWorld : Form { public HelloWorld() { InitializeComponent(); }

private void HelloWorld_Shown(object sender, EventArgs e) { this.Display_Label.Text = "Hello World!"; }}

Page 9: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

ここに戸惑った!

IDEにフォーマットさせると行数が増えるイベントプロシージャとイベントの関連付け

プロパティの指定や代入文

行の終わりは;(そう言えばCも)

Page 10: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

index

Microsoft Visual C# の第一印象

SQL Server を使ってみた

Web アプリを作ってみた

Visual Basic と Visual C#

Page 11: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

ADO.NET の基本的な構造

.NET データプロバイダ

Connection

Command DataReader

DataAdapter

データベース

DataSet

Windows コントロールASP.NET コントロール

Transaction

Parameter

プログラミング

プログラミング

Page 12: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

Connection

private void Connection_Click(object sender, EventArgs e)   { SqlConnection cn = new SqlConnection(); this.Cursor = Cursors.WaitCursor; try   { cn.ConnectionString = @"User Id=sa;" + @"Password=;" + @"Initial Catalog=pubs;" + @"Data Source=localhost\SQLEXPRESS;"; cn.Open(); } catch (Exception ex) { MessageBox.Show(ex.Message, this.Text,

・・・・・・・・・・・・・・・・・・・・・ ); } finally { this.Cursor = Cursors.Default; } }

Page 13: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

データソースと DataSet クラスの対応付け

.NET データプロバイダには、更新可能セットがない

DataSet は仮想的なデータベース

• もちろん更新も可能

.NET データプロバイダと DataSet の相互乗り入れ

• DataSet によるデータソースの更新可能セットを実現

データソース Command DataAdapter Dataset

アプリ

Page 14: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

DataAdapter

using (SqlTransaction _tr = _cn.BeginTransaction()) { using (SqlCommand _cmd = new SqlCommand(sqlString, _cn)) { _cmd.Transaction = _tr; //### 重要 ### using (SqlDataAdapter _da = new SqlDataAdapter(_cmd)) { using (SqlCommandBuilder cb = new SqlCommandBuilder(_da)) { _da.UpdateCommand = cb.GetUpdateCommand(); _da.InsertCommand = cb.GetInsertCommand(); _da.DeleteCommand = cb.GetDeleteCommand(); Boolean isOK = False; try { _da.Fill(Ds, "employee"); isOK = True; } catch (Exception ex) { MessageBox.Show(ex.Message, ・・・・・・・ ); } finally { if (isOK) { _tr.Commit(); } else { _tr.Rollback(); }

Page 15: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

index

Microsoft Visual C# の第一印象

SQL Server を使ってみた

Web アプリを作ってみた

Visual Basic と Visual C#

Page 16: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

Web アプリ +Web サービス

ブラウザ XML Web サービス DBWeb アプリ

FW

Page 17: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

はじめての C# - Web アプリ編

Page 18: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

マルチ言語開発

twitter.com

iModeTwitCs

PC 向け

iMode 向け

Page 19: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

開発環境

Web サービスの配置について

ソース

MSIL

MSIL

実行環境

MSIL

MSIL

MSIL

MSIL

ソース MSIL手動 XCOPY

手動 XCOPY

手動 XCOPY

初回時

FTP

HTTP

MSIL

サイトの発行

naitive

naitive

naitive

naitive

naitive初回時

初回時

初回時

初回時

初回時

Page 20: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

Web サイトの発行

Web アプリのときは、 aspx ファイルの内容をサイト上で更新できるかを決定

ASPX

dll (aspx.cs の MSIL)

テンポラリアセンブリ

JITコンパイル

Page 21: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

ソリューション

プロジェクトと仮想フォルダの関係について

プロジェクト1

プロジェクト2

プロジェクト3

プロジェクト4

IIS

仮想フォルダ1

仮想フォルダ2

仮想フォルダ3

仮想フォルダ4

WP

WP

WP

WP

Page 22: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

index

Microsoft Visual C# の第一印象

SQL Server を使ってみた

Web アプリを作ってみた

Visual Basic と Visual C#

Page 23: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

Visual Basic と Visual C#

動作フレームワークは、 .NET Framework

• 画面や各機能

IDE は、 Visual Studio

• キーアサイン、デバッグなどの機能

行の終わり

• 改行 or 行終端文字

Page 24: MVP for VB  が語る  C#  入門

わんくま同盟 東京勉強会 #23 - C# Day

QA