PR

SQL Serverデータベースの作成とデータソースの作成

2010年11月17日(水)
PROJECT KySS

本連載では、WCF RIA Servicesの機能を使って、DataGridに表示されたSQL Serverデータベースの編集や、データの新規追加を解説していきます。WCF RIA Servicesを使うとクライアントからサーバー上のデータにアクセスができ、検索、編集、保存が可能になるといったメリットがあります。クライアントとサーバー間の通信にWCF(Windows Communication Foundation)が使用されます。ほとんどのコードが自動生成され、ユーザーが記述するコードはごく僅かです。

第1回では、SQL Serverデータベースの作成と、ADO.NET Entity Data Modelの作成、Domain Service Classの作成方法について解説します。Domain Service Classを作成することで、DomainServiceのデータソースが作成されます。このDomainServiceを使ってクライアントにサービスを公開します。これらの追加作業はウィザードに従うだけで容易に作成することができます。

では、まず初めに、このプログラムで実装する機能の動作を、下記に解説しておきます。

DataGridに表示されているデータはDataPagerと関連付けられており、ページングが可能になっています。任意のデータをダブルクリックして編集し、[更新]ボタンをクリックすると、変更がSQL Serverデータベースに反映されます(図1)。また、[追加]ボタンをクリックすると、新規データ追加ボックスが表示され、データの追加が可能になります。

データを追加し、[追加]ボタンをクリックすると、DataGridにデータの追加が行われます。SQL Serverデータベースにもデータが追加されています(図2)。「画像」セルは編集時にComboBoxが表示され、その中から画像ファイル名の一覧を選択できます。

図1:DataGridのデータが編集され、変更がSQL Serverデータベースにも反映されている。この例では、「かきあげうどん」の画像が「月見うどん」に替わっている(クリックで拡大)

図2:データを新規追加し、DataGridとSQL Serverデータベースに反映されている(クリックで拡大)

完成したサンプル・ファイルは最終回(第3回)でダウンロードできます。

新規プロジェクトの作成

早速サンプルを作っていきましょう。

VS 2010のメニューから「ファイル(F)/新規作成(N)/プロジェクト(P)」を選択します。本稿では開発言語にVisual Basicを用います。次に、「Silverlight アプリケーション」を選択して、「名前(N)」に任意のプロジェクト名を指定します。ここでは「SL4_udon」という名前を付けています。

.NET Frameworkのバージョンはデフォルトの「4」、「新しいSilverlightアプリケーション」の[オプション]の「Silverlightのバージョン(L)」も、デフォルトの「Silverlight 4」を選択します。一番下に記述されている「WCF RIAサービスを有効にする(A)」にチェックを入れ(図3)、[OK]ボタンをクリックします。

図3:「WCF RIAサービスを有効にする(A)」にチェックを入れる

SQL Serverデータベースを作成する

今回使用するSQL Serverデータベースを作成します。ソリューションエクスプローラー内の、SL4_udon.Webを選択し、マウスの右クリックで表示されるメニューから「追加(D)/新しい項目(W)」と選択します。「新しい項目の追加」画面が表示されますので、「インストールされたテンプレート」から「データ」を選択し、「SQL Serverデータベース」を選択します(図4)。「名前(N)」はデフォルトのままで、[追加(A)]ボタンをクリックします。

  • [※]環境によっては、SQL Serverデータベース作成時に「ユーザー インスタンスのプロセスを起動中のエラーにより、SQL Server のユーザーインスタンスを生成できませんでした。接続は閉じられます。」のメッセージが出て、SQL Serverに接続できない場合があります。その場合は下記の手順に従ってみてください(Windows7 Professionalの場合)。
    C:\User(ユーザー)\User名(ユーザー名)\AppData\Local\Microsoft\Microsoft SQL Server Data内のSQLEXPRESSフォルダを丸ごと削除してください。このフォルダは接続時に自動的に作成されますので、削除しても大丈夫です。AppDataフォルダはデフォルトで隠しフォルダになっていますので、「フォルダオプション」から、表示されるよう設定してください。

図4:「SQL Serverデータベース」を選択する(クリックで拡大)

作成するSQL Serverデータベースを、App_Dataフォルダに配置する旨のメッセージボックスが表示されますので、[はい(Y)]を選択します(図5)。

図5:App_Dataフォルダ内にSQL Serverデータを配置する旨のメッセージボックス

ソリューションエクスプローラー内のSL4_udon.Webの配下にApp_Dataというフォルダが作成され、Database1.mdfというSQL Serverデータベースが配置されます(図6)。

図6:App_Dataフォルダ内にDatabase1.mdfファイルが配置される

ソリューションエクスプローラー内のSL4_udonを選択し、マウスの右クリックで表示されるメニューから、「追加(D)/新しいフォルダ(D)」と選択して、Imageというフォルダを作っておきます。その中に、「追加(D)/既存の項目(G)」と選択して「うどん」のPNG画像を追加しています。ダウンロードされるファイルには画像は追加済みです。

四国のSOHO。薬師寺国安(VBプログラマ)と、薬師寺聖(デザイナ、エンジニア)によるコラボレーション・ユニット。1997年6月、Dynamic HTMLとDirectAnimationの普及を目的として結成。共同開発やユニット名義での執筆活動を行う。XMLおよび.NETに関する著書や連載多数。最新刊は「Silverlight実践プログラミング」両名とも、Microsoft MVP for Development Platforms - Client App Dev (Oct 2003-Sep 2012)。http://www.PROJECTKySS.NET/

連載バックナンバー

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています