SQL Serverデータベースの作成とデータソースの作成
本連載では、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画像を追加しています。ダウンロードされるファイルには画像は追加済みです。