Welcome to MSDN Blogs Sign in | Join | Help

【PHP】 最新の Zend Framework は Windows Azure をサポート

PHP アプリケーション開発をする時にフレームワークを利用する方は非常に多いと思います。

今は Zend Framework 、CakePHP、Symfony がメジャーなところでしょうか???

その中の、Zend Framework 、、

以前から Windows Azure 対応が囁かれていましたが、遂に Windows Azure 対応版が登場しました。

http://www.prweb.com/releases/php/webapplicationdevelopment/prweb3519094.htm

フレームワークに追加された Zend_Service_WindowsAzure コンポーネントを利用することで、Windows Azure開発で最初の障壁となるストレージ(BLOB、Table、Queue)の操作が簡素化されます。

この話は、US Microsoft の Interoperability Blog (英語)でも紹介されていますね。

また OpenAtMicrosoft の Twitter (英語)でも。

英語に拒否反応を示さない方であれば、この辺りフォローしておくと最新情報がキャッチアップできます。

 

【PHP】【お知らせ】 OSC 2010 Tokyo で PHP on Windows Azure やります。

ここのところ私の周りのエバンジェリス達は心血を注いで Tech Days コンテンツ準備に勤しんでいるようです。

今回はリリースされたばかりの Windows Azure Platform をはじめ、うなぎのぼりに注目度が上昇している Silverlight 4、リリース時期が公表された VS 2010 などなど新しいコンテンツがテンコ盛りです。そんな Tech Days の早期割引締め切りがなんと明日に迫っています。一万円ほど損する前に、早めのご登録を!

ちなみに、私はというと【.NET Framework 4 における進化した ADO.NET Entity Framework】というテーマのセッションを担当させて頂く予定です。現在、DEMO作成中・・・・・・

そして、その2日後にはオープンソースカンファレンスで PHP on Windows Azure のお話をさせて頂きます。

タイトル:【クラウドOS = Windows Azure を徹底活用するための PHP アプリケーション開発】。

アブスト

マイクロソフトはクラウドOSとしてWindows Azureを正式にリリースしました。
このセッションではWindows Azure 上で PHP アプリケーションを構築するためのノウハウや、MediaWiki などのCMSを配置する方法をご紹介します。

当日はお土産をご用意する予定です。すでに登録受付開始していますので、ご興味あればこちらもご登録を。

http://www.ospn.jp/osc2010-spring/

ちなみに展示ブース要員として、「2010年2月26日(金)・27日(土) 10:00-17:00」ずっと居ます。なにか疑問点などあればお気軽にお立ち寄りください。

 

VS 2010 Beta2 用の Entity Framework POCO Template がリリースされました。

最近は Tech Days 2010 やその他諸々のため Blog の更新が滞っており申し訳ありません。来月にはセミナーやら書き物などでドーンとまとめてお伝えできると思います。

今日は Entity Framework 4 についてお知らせです。

タイトルにもある通り、VS 2010 Beta 2 で動作する POCO Template がリリースされています。

C# 用と VB 用で異なるのでお間違えなく。

C# 用 POCO Template

VB 用 POCO Template

これは、EF4 新機能である POCO ベース の Entity を自動的に生成してくれるデザイナの拡張機能です。

POCO をご存じないかたはこちらの記事をご覧ください。

また、POCO Template の具体的な利用方法はこちらです。

POCO Template は今のところ、 VS 2010 RTM に含まれる予定はないようです。

Visual Studio ギャラリーからダウンロードして拡張機能として利用して頂くことになります。

 

Entity Framework 4 では Native SQL が実行可能

今日はEF4の新機能をご紹介しましょう。

EFはデータソースを抽象化できるのでビジネスロジックを変更することなくデータソースの切り替えが可能・・・・・・・・・・・・・・・

なのですが、複雑なシステムでは、どうしてもDB固有の操作が必要になるケースがあるかもしれません。そこで Native SQL を実行するための関数がObjectContextに追加されました。

ExecuteStoreCommandExecuteStoreQueryというコマンドです。

(EFを使っている意味合いが薄れてしまうので、安易に利用しないで使いどころを見極めてください。できるだけ使わなくて済むようにするのがベストです)

 

 

構文

C#

public int ExecuteStoreCommand(
    string commandText,
    params Object[] parameters
)

 

C#

public ObjectResult<TElement> ExecuteStoreQuery<TElement>(
    string commandText,
    params Object[] parameters
)

 

 

 

ExecuteStoreCommand メソッド使ってみましょう

このコマンドはDBに対してNativeのUpdate、Delete、Insert、ストアドプロシージャなどを実行するために利用します。

戻り値は影響を受けた行数になります。使い方は非常にシンプルですね。

SchoolEntities db = new SchoolEntities();

int count = db.ExecuteStoreCommand("Update Schools set Name = 'Saga' Where Id = 1");

 

 

 

ExecuteStoreQuery<T> メソッド使ってみましょう

このコマンドはDBに対してNative のQueryを実行するのに利用します。

IEnumerable<School> schools = db.ExecuteStoreQuery<School>("SELECT * FROM Schools");

foreach (var s in schools)
{
    Console.WriteLine(s.Name);
}

 

 

 

Posted by daisukei | 0 Comments

Tech・days 2010 セッション タイトル公開!!

明日から冬季休暇に入られる方も多いのではないでしょうか?

私は休暇を早めにとって帰省しているものの、、、仕事の執筆活動に勤しんでおります。

 

とこでTech・days 2010のセッションタイトルが公開されていますね。

http://www.microsoft.com/japan/events/techdays/2010/session/session.aspx

 

私は今のところ「 .NET Framework 4 における進化した ADO.NET Entity Framework 」というテーマでお話しさせていただく予定です。

非常に多くの新機能が搭載されるため、嬉しい反面、70分でまとめるのが大変ですね。

無題

では、今年は皆様方に大変お世話になりました。

来年も何卒よろしくお願いいたします。

【お知らせ】 Future Technology Days Web テクノロジーセミナー

今日は Future Technology Days の無料セミナーイベントに関するお知らせです。

UX、Windows 7、Windows Azure というテーマで実施してきた本セミナーですが、今回新たに追加されたテーマは Web!!

従来、特に日本のマイクロソフトは企業向けアプリケーションにフォーカスする余り、インターネット Web に対する活動がお座成りになっていたと言われても仕方がない状況でした。

US や UK と比較すると、日本では インターネット Web におけるマイクロソフト製品、技術のシェアが非常に低いのが現状です。

そのような状況もあり、近年、ようやく日本のマイクロソフトもインターネット Web に注力することになっています。

結果、下記のような超お得なプログラムも多数提供しています。

皆さんには、そういったマイクロソフトの裏事情も考慮した上で、うまくお得なプログラム、傍にいるマイクロソフト社員、その他リソースを活用してビジネスを活性化して頂きたいと思います。

ee794964_bnr_PHPonIIS_367x245(ja-jp,MSDN_10) ee794964_ws_banner(ja-jp,MSDN_10)logo

 

そして、今回は主にレディネス強化を目的として Future Technology Days にて無償セミナーを実施します。

講師は最近、高いセミナー満足度を安定し保っている井上章氏です。

インターネットだけでなく社内Web構築にも役立つ内容になっているため、インターネット Web に拘らず参加してください。

おそらく抽選でプレゼントも何かしら用意できると思います。

 

では、興味を持って頂けたのであれば、お申込みをお願いします。

Future Technology Days - Web テクノロジー セミナー
一歩進んだ Web 開発のための Visual Studio 活用術
~ AJAX, jQuery を生かした Web アプリケーションのために ~
【詳細&お申込み】http://www.microsoft.com/japan/powerpro/ftd/webtechnologies/default.mspx

Posted by daisukei | 0 Comments

2009年 Widows Azure 上で動いているアプリまとめ

今年も早いもので、もう年末です。みなさんはこの師走をいかがお過ごしでしょうか?

 

今日はWindows Azure 上で動いているアプリケーションをいくつかご紹介しましょう。

当然、ここでご紹介するもの以外に、多くのアプリケーションが展開されています。

もし、他にもイケてるアプリがあれば、是非ご連絡ください。

また、正式に Evidence になっているものは Azure のサイト を参考にしてください。

 

 

・TORIOPTO

    http://toripotoazure.cloudapp.net/

    いろんなイベントで紹介されてます。アルバム作成アプリ。

 

・WIPSETV

    http://wipsetv.cloudapp.net/

    Azure の Blobを使った動画サイト

 

・Velocity on Azure

    http://velocitydemo1.cloudapp.net/

    分散キャッシュサーバー(Velocity)を使ったサイト。

     パフォーマンスが気になる時はキャッシュを有効活用しよう。

 

・Bingmap

    http://bingmapsupdates.cloudapp.net/

    世界地図としか言えない・・・・・・

 

Diag

    http://diags.cloudapp.net/

    アンケート

 

・Open Government

    http://ogdisdk.cloudapp.net/

    名前通り、政府データをオープンに。

 

・Twittazure

    http://twittzure.cloudapp.net/

    Twitter Client

 

・halloween

    http://halloween.cloudapp.net/

    Halloween と言えばカボチャ。お絵かきしてみましょう。

 

・特別従業員派遣サービスアプリ

    http://riaarchitect.cloudapp.net/#/Home

 

・Cloud SMS

    http://freesms.cloudapp.net/

 

・SpreadsheetGear

    http://spreadsheetgear.cloudapp.net/

     動的なチャート

 

・atmarkit
    http://atmarkit.cloudapp.net/

     Personal Site

 

・WordPress on Azure

    http://wordpressazure.cloudapp.net/

     Blogで有名なWordPressをAzureで。

 

・Azure Mediawiki

    http://azuremediawiki.cloudapp.net/Mediawiki/index.php?title=Main_Page

     MediawikiまでもAzureで

 

・kbb(現在、Server Error)

    http://kbb.cloudapp.net/

 

・Ruby on Rails

    http://rubyonrails.cloudapp.net/ 

    Ruby だって動きます。

 

 

次のようなコンテストもあり、次々にアプリケーションが登場します。見逃せません。

Cloud Bootstrap
~Windows Azure 開発コンテスト & タイム トライアル~
http://msdn.microsoft.com/ja-jp/azure/ee702427.aspx

Posted by daisukei | 0 Comments

Visual Studio 2010 ベータ2 EF4 ストアドプロシージャ改良点

すでに MS 社内は Techdays のスピーカーアサインなどで盛り上がっています。私はおそらく EF4 ( Entity Framework 4) のセッションを担当させて頂くことになりそうです。これは気合を入れて良いコンテンツを作らねば・・・・・・・・と今から構想を練っています。

何かコンテンツについて、ご希望あれば正月休みを返上してでも準備するので、ご連絡ください。

さて、今日は 新機能をご紹介しましょう。

EF 4 では ストアドプロシージャまわりも機能強化が行われているようです。

(そもそも、ドメイン層の実装をストアドプロシージャに含めてよいのかという議論は隅っこにおいておきます。)

現行 EF 1 ではストアドプロシージャの戻り値として「None」、「Scalar」、「Entity」が指定できました。EF 4 ではこれに「Complex Type」が追加されました。

ちなみに、ストアド プロシージャへの複合型のマッピング (Entity Framework) にある通り、EF 1 でも 「Complex Type」 にマッピングすることは可能でした。ただし、デザイナレベルでのサポートが実装されておらず、edmgen.exe などのコマンドラインツールを利用する必要がありました。 おそらく使っていた方は限りなく少ないと思います。

EF 4 ではデザイナレベルでサポートされることになり、誰でも簡単に使えることになります。

実際にpubs データベースを使って確認してみましょう。

ストアドプロシージャも忘れずにインポート。そしてモデルブラウザから「Add Function Import」 を選択します。

1

すると次のような画面が表示されます。

「Return a Collection Of」 で 「Complex」 をチェックします。

「Get Column Information」ボタンを押すと、ストアドプロシージャを解析して出力カラムの一覧が表形式で表示されます。

「Create New Complex Type」ボタンを押すと、自動的に Complex Type のオブジェクトが生成されます。今回は「reqtq1_Result」とう名称になっていますね。

2

「OK」ボタンを押してモデルブラウザを確認すると、次のように 「Complex Types」 と 「Function Import」 にオブジェクトが生成されます。

3

最後に実際使ってみましょう。コードはこんな感じです。

static void Main(string[] args)
{
    pubsEntities db = new pubsEntities();

    foreach (reptq1_Result result in db.reptq1())
    {
        Console.WriteLine(result.pub_id);
        Console.WriteLine(result.avg_price);
    }
}

やはり既存資産やスキル、パフォーマンスを考慮するとストアドプロシージャも必要になることが多いのではないでしょうか。実際、使ってみてください。

 

【PHP】 MediaWiki を Windows Azure に Deploy したい?

今日も PHP Developer 向けのネタです。

 

前回 、ざっと Interoperability 関連のリソース情報などをお知らせしました。

今回はもう少し ドリルダウン して Windows Azure Mediawiki MySQL Solution Accelerator を試してみましょう。

※ 基本的にはUser Manual (英語) を順番にやっていけば容易に動作します。

キャプチャ

 

 

 

必要なのは作業は

1. 必要なソフトウェアのインストール

No

Software Name

Version

Download Location

1

MySql Enterprise

5.1

http://dev.mysql.com/downloads/mysql/5.1.html#winx64

2

PHP

5.2.10

http://windows.php.net/download/

3

Mediawiki

1.15.1

http://www.mediawiki.org/wiki/Download

4

PhpMyAdmin

3.2.1

http://www.phpmyadmin.net/home_page/downloads.php

5

Memcached

1.2.1.0

http://memcached.org/

 

 

2. Development Fabric の実行

キャプチャ

 

 

3. Windows Azure SDK コマンドプロンプトからコマンドの実行

 

32bit

         C:\Samples\AzureMySQLMediawiki_x86\Runme.cmd

  64bit

          C:\Samples\AzureMySQLMediawiki_x64\Runme.cmd

 

 

 

 

だけで非常に簡単にローカル環境で動作することが可能です。

Developement Fabric の中身をのぞいてみると 10 個 ほどインスタンスがあがっているのが確認できます。

MediaWiki 本体以外にも以下が動いています。

Worker Role : MySQL、Memcache、 Instance Manager、Worker Monitor

Web Role : PHP Admin

キャプチャ

 

 

 

 

ブラウザで Developement Fabric でホストしている Wikipedia にアクセスするとちゃんと表示されます。

2

 

 

 

User Manual にはちゃんと Windows Azure でホストするところまで解説があります。

私は先週リクエストした Windows Azure の Invitation Code が届かず今日はここまで・・・

【PHP】Eclipseで作ったアプリケーションを Windows Azure に Deploy したい? No2

今日は PHP Developer 向けのネタです。

マイクロソフトの Windows Azure は Interoperability を非常に重視しているお話を以前しました。今日はその続きです。

余談ですが私も以前は PHP や Java を使った開発を何年間かやっており、なかなか興味深い分野です。

 

 

Azure サイトには Interoperability のページがありますね。

http://www.microsoft.com/windowsazure/interop/

このページを見るとなんだか便利そうな、SDK や Accelerator が用意されているのがわかります。

キャプチャ

 

 

さらに Window Azure Tools for Eclipse のサイト。

http://www.windowsazure4e.org/

 

このサイトの Learn ページでは以下のようなメニューでラボが用意されています。

初心者でもStep By Step で学べる非常によいドキュメントです。

Lab 0 — Quick Start
Lab 1 — Windows Azure Web Applications
    1.1. Getting Started with Hello World
    1.2. Converting Projects
Lab 2 — Windows Azure Data Storage
    2.1. Getting Started using Blob Services
    2.2. Using Table Services
Lab 3 — Windows SQL Azure

 

 

 

試しに Eclipse と Azure Plugin をインストール。

メニューに Azure 用のコマンドがあり、ここから Development Fabric の起動や、 Windows Azure へ発行が出来るようです。

キャプチャ

 

 

次に、Interoperability サイトで公開されている

Windows Azure MySQL PHP Solution Accelerator を試してみました。

こいつを使うと Azure 上で MySQL が使えるようになります。

余談ですが私も以前は MySQL を使った開発を何年間かやっており、なかなか興味深い分野です。うざいですね・・・・・・・・

Developement Fabric上で実行すると以下のように、MySQL は WorkerRoleで動作することになります。

キャプチャ

 

 

WebRole で動いている PHP Admin もちゃんと Developement Fabric 上で動作します。

キャプチャ

 

 マニュアルには Windows Azure 上に Upload する手段も記述してあるので、お試しください。

 

Posted by daisukei | 0 Comments

[PHP] PDC09 Interoperability 関連まとめ

多くの方々はご存じだと思いますが、先週 PDC09 が開催されました。 すでにストリーミングで キーノート、ブレイクアウトセッションが公開されているので英語に拒否反応のない方はチェックしておいてください。

このポストではその中でも interoperability 関連のアナウンスを纏めておきましょう。ちなみにPDCの関連セッションは以下の通り。

Day1 Keynote

Developing PHP and MySQL Applications with Windows Azure

Building Java Applications with Windows Azure

 

 

セッションをご覧頂くと Windows Azure Platform が interoperability に非常に注力していることが理解できると思います。

ちなみに Windows Azure の interoperability 関連のサイトは こちら です。

 

 

 

簡単に内容を解説しましょう

Day1 Keynote

_ray_thumb_1

Keynote に関しては infoQ でも公開されています。

ここでは、WordPress 創始者のMatt Mullenweg(マット・マレンウェッグ) が登場、Windows Azure 上で WordPress を動かすというデモを行いました。

ミドルウェアとしては MySQL と Apache を Worker Role で動かしているとのことでした。

またサードパーティから Windows Azure Storage Plugin For WordPress なるものが発表されました。これは動画や画像といったサイズの大きなファイルを格安の Windows Azure Storage に保存できるというソリューションです。

また、DonBoxが登場してNative サポート(ここではC++)のデモを行いました。

尚、Keynoteで紹介されていたWordPressデモサイトはこちらです。

http://wordpressazure.cloudapp.net/

 

 

 

 

Developing PHP and MySQL Applications with Windows Azure

・Windows Azure を使うメリットは

- オンデマンドコンピューターリソース

- 無制限ストレージ

- 管理自動化

- 既存スキルをそのまま生かせる

- WordPressも動く

- MediaWiki もAzure上で動いている

            http://azuremediawiki.cloudapp.net/Mediawiki/index.php?title=Main_Page

 

・Eclipse、Windows Azure、AppFabric、SQL Azure、MySQL、Memcached が使える

- Windows Azure SDK for PHP

- Windows Azure Tools for Eclipse

- AppFabric SDK for PHP Developers

- SQL Server Driver for PHP 1.1

 

・便利な Solution Accelerator

- Windows Azure MySQL PHP Solution Accelerator

- Windows Azure Memcached Solution Accelerator

- Instance Manager (Web App Console) で管理

- Windows Azure Mediawiki MySQL Solution Accelerator

 

・Customer Showcase: Glympse

     内部的にはPHP、MySQL、Memcachedで動いてる

     http://mslbustour.cloudapp.net/ 

 

 

 

 

Building Java Applications with Windows Azure

・Tomcat + JRE on Azure で動いているサイト
    
http://hellojava.cloudapp.net/

 

・Eclipse、Windows Azure、AppFabric、SQL Azureが使える

AppFabric SDK for Java

Windows Azure SDK for Java

Windows Azure Tools for Eclipse

-  JDBC経由でSQL Azureにアクセス可能

 

・便利なツール
          - 
Windows Azure Tomcat Solution Accelerator

 

 

 


 

USのBlog Interoperability at PDC09: let's recap も参考にしてください。

 

ADO.NET Entity Framework を用いたN階層システムの構築手法

今日は ADO.NET Entity Framework + N 階層システムについて考えてみたいと思います。

現バージョンの ADO.NET Enity Framework ではシリアライズ対象でない ObjectContext が変更履歴(CRUDステータス 、Old Value、FKチェックなどなど)を管理しているため、特に同時実行制御を考慮したN階層システムの構築が困難なケースがあります。

当然ながら変更履歴を管理するDTOなどを自身で作成すれば対応できますが、スキーマ構造が複雑化するにつれて相乗的に実装が困難になるでしょう。

その結果、WCFなどを使った更新を伴うデータサービスの構築を考えた場合、必ずしもDataSetより優れているとは言い難いのが現状だと思います。

 

この問題の解決策として登場するのが Microsoft ADO.NET Entity Framework Feature Community Technology Preview に含まれる Templates for Self-Tracking Entities (N-Tier support) になります。

これは 以前のPost でも少し紹介しました。おそらく乱暴すぎてよく理解できなかった方々がほとんどでしょう。(反省)

今回は実際にいじってみましょう。

尚、ADO.NET team のBlogでも紹介されているので、ちちらも参考にしてください。

※ US版サンプルコードダウンロード : EFFeatureCTP2_Walkthrough_STE.ZIP

 

 

環境

Visual Studio 2010 Beta 2 (English) ※現状日本語版では動きません

Microsoft ADO.NET Entity Framework Feature Community Technology Preview 2

・SQL Server 2005/2008

 

プロジェクトの構成

・MSDAL

   Entity Frameworkを使ったデータアクセスレイヤーを定義

・MSDTO

   DTO(Data Transfer Object)を定義

・MSWcfClient

   サービスクライアントのコンソールアプリ

・MSWcfService

   WCFサービス

 

 

開発スタート (※あくまでデモ用サンプルです)

1.MSDALの作成

今回はモデルファーストで作っていきましょう。employee と company という名前のエンティティを以下のように定義します。

後で楽観的同時実行制御の動作確認もしたいので、各プロパティの「Concurrency Mode」はすべて「Fixed」に設定しておきます。

 

 

モデルの定義が終わったら、コンテキストメニューから「Generate Database from Model」」でSQLスクリプトを作成して、実行します。

2

 

コードビハインドは不要なので以下のようにCustom Tool の Code Generator を削除しておきます。

3 

 

ここまでは復習です。ご存じない方は以前のポストを参考にしてください。

次にデザイナ上のコンテキストメニューから「Add Code Generation Item…」を選択します。

4

 

すると テンプレートで「ADO.NET Self-Tracking Entities」が選択できます。

※現状、日本語版VSでは出てきません。

5

 

実行するとT4 Template 「XXX.Context.tt」 と 「XXX.Types.tt」 というファイルが追加されているのがわかります。中身をみてみると Object Context と エンティティ(今回は company と employee)が存在します。

今回、エンティティはMSDTOプロジェクトで管理したいとおもいます。そのため、一旦今あるエンティティを削除します。

手順は「XXX.Types.tt」のCustom Toolを以下のように削除します。また、自動的に「XXX.Types.tt」配下のエンティティは削除されないので手動で削除しておきます。

6

よやく MSDAL の作成完了です。

 

 

 

2.MSDTOの作成

下記のようにAdd Existing Item で先ほど作成した「XXX.Types.tt」を選択します。「Add As Link」で追加するのをお忘れなく。

7

すると、プロジェクトに company.cs、employee.cs、XXX.Types.cs が作成されているのがわかります。

10

これでMSDTOは完成です。

 

 

 

3.MSWcfService

作成したプロジェクト「MSDAL」、「MSDTO」への参照を追加しておきます。またWeb.configにデータベースへの接続文字列も追加しておきましょう。

実行コードは以下の通り。

サービスインタフェース

namespace MSWcfService
{
    [ServiceContract]
    public interface IMSService
    {
        [OperationContract]
        company getCompany(int id);

        [OperationContract]
        bool updateCompany(company c);

        [OperationContract]
        employee getEmployee(int id);

        [OperationContract]
        bool updateEmployee(employee e);
    }
}

 

 

サービスの実装

ポイントは以下3点だと思います。

・LINQのincludeオプションを使ってcompanyに紐づくemployeeもまとめて取得している

・OptimisticConcurrencyExceptionで楽観的同時実行のエラーを受け取っている

・ApplyChanges メソッドのみで削除、追加、更新すべてに対応できる

namespace MSWcfService
{
    public class MSService : IMSService
    {
        MSModelContainer db = new MSModelContainer();

        public company getCompany(int id)
        {
            var result = db.companySet.Include("employee").Where(c => c.companyId == id).First();
            return result;
        }

        public bool updateCompany(company c)
        {
            try
            {
                db.companySet.ApplyChanges<company>(c);
                db.SaveChanges();
            }
            catch (OptimisticConcurrencyException ex)
            {
                return false;
            }

            return true;
        }

        public employee getEmployee(int id)
        {
            var result = db.employeeSet.Where(e => e.employeeId == id).First();
            return result;
        }

        public bool updateEmployee(employee e)
        {
            try
            {
                db.employeeSet.ApplyChanges<employee>(e);
                db.SaveChanges();
            }
            catch (OptimisticConcurrencyException ex)
            {
                return false;
            }

            return true;
        }
    }

 

サービス側の実装がものすごくシンプルになるのがご確認いただけるでしょう。

 

 

 

4.MSWcfClient

作成したプロジェクト「MSDTO」への参照を追加しておきます。

また「Add Service Reference」で先ほど作成した「MSWcfService」へのサービス参照を追加しておきましょう。以上で設定は完了。

あとはクライアントからいろいろ試すだけです。

ちゃんと楽観的同時実行制御も実装されてますし、関連のある複数エンティティをまとめて一括更新することもできます。

参考までにテストプログラムを載せておきます。

static void Main(string[] args)
{
    using (var service = new MSWcfClient.ServiceReference1.MSServiceClient())
    {
        {
            // companyデータの追加
            company c = new company();
            c.companyId = 1;
            c.companyName = "Microsoft";
            c.address = "OST";
            service.updateCompany(c);
        }

        {
            // company データの取得
            company c = service.getCompany(1);

            // employee データ追加
            employee e = new employee();
            e.employeeId = 1;
            e.employeeName = "Daisuke Inoue";
            e.company = c;

            service.updateEmployee(e);
        }

        {
            // company、employee データの取得
            company c = service.getCompany(1);
            employee e = c.employee.First();

            // employee データ更新
            e.employeeName = "Akira Inoue";
            service.updateCompany(c);
        }

        {
            // 全データ削除
            company c = service.getCompany(1);
            employee e = c.employee.First();
            e.MarkAsDeleted();
            service.updateCompany(c);
        }
    }
}

 

クライアント側も非常にシンプルなコードになります。こいつはめちゃくちゃ便利です!!

 

 

リソース情報

・n 層アプリケーションで回避すべきアンチパターン
 http://msdn.microsoft.com/ja-jp/magazine/dd882522.aspx


・n 層アプリケーションのパターン
 http://msdn.microsoft.com/ja-jp/magazine/ee321569.aspx

・EF4 による n 層アプリケーションの構築
 http://msdn.microsoft.com/ja-jp/magazine/ee335715.aspx

Windows Azure Tools for VS (November 2009) のリリース

PDC09が間もなく開始です。MS社員も大勢ロサンゼルスにかけつけています。

(ちなみに私は日本におりますが)

 

Key Note は Live Smooth-Streamingで日本時間11月18日 AM1:30 よりリアルタイムで誰でも見ることができます。興味ある方や夜型生活の方はPDCの様子を確認してみてはいかがでしょうか。また、PDC Twitterに登録して臨場感を増すのもよいでしょう。

 

それからPDCに伴って、ようやく CTP が取れた 正式版 Window Azure Tools for VS が登場しました。

変更内容は以下になります。詳細はUSのサイトをご確認ください。

・Visual Studio 2010 Beta2 サポート

・テンプレート追加

   ASP.NET MVC 2(2010 only)、F# worker roles(2010 only)、WCF Service

・November Windows Azure SDK フルサポート

・UX改善

・動的テーブル生成

 

 

せっかくなので Visual Studio 2010 Beta 2 (日本語版) を使って試してみましょう。

テンプレートで Windows Azure Cloud Service を選択します。

1

 

 

すると、

ちゃんテンプレートが増えてますね。

ASP.NET MVC 2(2010 only)、F# worker roles(2010 only)、WCF Service

2

 

ようやく SQL Server Management Studio の SQL Azure サポート

SQL Azure を操作するには、いろいろと制限があり使いにくかったSQL Server Management Studio ですが、SQL Server 2008 R2 ベースの Management Studio では ちゃんと SQL Azure がサポートされるようになります。現状 CTP ではありますが下記からダウンロード可能です。

試に SQL Azure に接続してみました。ちゃんとオブジェクトエクスプローラーも使えますね。

キャプチャ

 

[UX] Windows 7 で出来ちゃうシリーズ その1

こんにちは。 Windows 7 随分盛り上がってますね。

このシリーズでは Windows 7 の新機能を生かしたアプリケーションをご紹介したいと思います。

記念すべき第一回目は Bump Top さんの 3D デスクトップ

 

 
 
 

どうでしょう。社内では「面白そう!!」、「使ってみたい!!」という反応でした。

このアプリケーションは Windows 7 の新機能であるマルチタッチを活用したアプリケーションです。

 

 

みなさんも試しにマルチタッチを使った斬新なアプリケーションを作ってみてはいかがでしょうか。

Windows Touch: Developer Resources にはハンズオンやサンプルコードが公開されています。

 

また Silverlight版のマルチタッチを検討されている方は以下のブログの情報が役立ちます。

http://www.jebishop.com/2009/11/05/multi-touch-gesture-recognition-in-silverlight-3/

ご参考まで。。。

Posted by daisukei | 0 Comments
Filed under:
More Posts Next page »
 
Page view tracker