Visual Studio 2010 日本語版リリース

本日よりMSDNサブスクリプションよりダウンロードできるようになっています。 MSDN Subscriptionの会員の方はこれで確認いただけるようになりました。 (ライセンス販売やパッケージ販売はもう少し後になりますので、もう少々お待ちください) http://msdn.microsoft.com/ja-jp/subscriptions/dd179326.aspx これに合わせて、MSDNライブラリの方も日本語化されています。 (これまで機械翻訳で申し訳ありませんでした。) http://msdn.microsoft.com/ja-jp/library/dd831853.aspx それと、Windows7のVSテーマも公開されています。 先日のReady Dayでは各スピーカーに対して、テーマ(壁紙)の指定があり、自分は「道」でした。 個人的には「橋」が好きなんですけどね(笑) でも、どれも綺麗ですよ。 http://closeup.jp.msn.com/visualstudio2010/


Visual Studio 2010 Beta 2

先日よりリリースされています。 Visual Studio 2010 Beta 2 http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx このブログで取り上げているADO.NET Entity FrameworkとADO.NET Data Servicesですが、それぞれUpdateがあります。 EFに関しては、弊社の井上ブログに紹介されています。http://blogs.msdn.com/daisukei/archive/2009/10/21/entity-framework-4-beta-2.aspx ここではADO.NET Data Servicesについてご紹介します。 射影:クライアントとサーバーライブラリに対して射影の機能がサポートされます。要するに、LINQ to ADO.NET DataServicesのSelectでメンバーの選択(列の選択)が可能だと。 データバインド:  WPFとSilverlightでのTwoWayバインディングのサポートです。 Row Count: 行の数のみの取得が可能です、これまではデータの取得が必要でした。 Feed Customization (aka "Web Friendly Feeds"):AtomPubが持つプロパティに対してデータをマップできます。以下が分かりやすいです。http://blogs.msdn.com/phaniraj/archive/2009/08/31/introducing-web-friendly-feeds-aka-friendly-feeds-updated-for-ctp2.aspx 例えば、AtomPubには著者(author)があるのですが、こうした情報の利用が可能です。 Server Driven Paging (SDP):一度のリクエストで取得できるデータ件数の制限が可能です。これによって、例えば写真サービスなどのリクエストでは、自動的にページングができるようになります。AtomPub <link rel="next" …> で次のページリンクが出るようです。 Enhanced BLOB Support: 画像などのBLOBファイルの遅延ロードが可能になります。  Request Pipeline: リクエストのパイプライン処理をある程度カスタマイズ出来るようになるようです。これで細かな動きの確認ができるようになると思われます。 New "Data Service Provider" Interface for Custom Provider…


New EntityFramework

このところ、書籍の執筆とWindows7でなかなか手に付かなかったのですが、実は次期Visual StudioのBetaがリリースされてます。 Visual Studio 2010 and .NET Framework 4 Beta 1(英語) http://msdn.microsoft.com/ja-jp/vstudio/dd582936(en-us).aspx Microsoft Visual Studio 2010 – 将来のバージョン(日本語)http://www.microsoft.com/japan/msdn/vstudio/2010/ で気がつくと、ADO.NETチームブログにたくさんのエントリが!(こればかりですね・・・) 例えばこれです。 http://blogs.msdn.com/adonet/archive/2009/05/21/updated-entity-framework-documentation-for-beta1.aspx ADO.NET EntityFrameworkは、次期バージョンでかなり改良されています。 例えば、上記のエントリに書いてあることを書き出してみます。 ・Persistence-Ignorant Objects いわゆるPIシナリオのサポートですね。永続化層に対して特定インタフェイスや特定プロダクトの実装をエンティティにいれこまないことが可能です。システムの汎用化を促進します。で、当然POCOを使用します。ちなみに現状実装ではInterface+POCOにせざる得ないんですよ。(このへんはプログラミングLINQにも記述しています。) ・Deferred Loading of Related Objects 遅延ロードの実装です。LINQ to SQLではありましたが、EFにはなかったものです。 ただ、欲しい人とそうでない人にわかれる機能ですね。コレ。 ・Functions in LINQ to Entities Queries CLRのメソッドがCSDL/SSDL上に定義できるようになります。でLINQ to Entities越しに実行可能と。 ドメインモデルをどこまでメタボにするのか?は意見の分かれるところだと思いますが。 ・Customized Object Layer Code Generation これは大きいですね、要するにEDMの独自改修をサポートしてくれる機能です。 今までユーザーが個人で追加したインターフェイスなどのサポートは不可能でした。(ツールでジェネレートするしかなかったわけです。) T4Templarte機能を使用してテンプレートに従ってクラスをジェネレートします。必要な部分は開発者が手を入れた形でクラスが作られます。 ここが詳しいです。…

15

コラム紹介

TFコラムの紹介を3本ほど。 ・技術はソリューションで見たいですね 単に技術情報があるだけでは、伝わらない時代になってきたようです・・・ ソリューションサンプルを再度スポットライト下に。 http://msdn.microsoft.com/ja-jp/events/dd266962.aspx   ・SQL Data Services Azureコラムシリーズ第5段として、SQL Server 製品担当の太田さんと共同執筆しました。 SDSってなに?仕様が変わったと聞いたけど?など、SQL Data Services のFirstStepとしてお読みください。 ・UX はいる? いらない? これは、私ではなくMVPの森さんが書いてくれたコラムです。 彼と私は「実用Xaml同盟」と勝手に同盟を組んでいます(?) (このへんのコラムとリンクしていたりしなかったり) ご興味がありましたら、ご確認いただけると嬉しいです。

7

Visual Studio 2008 ソリューションサンプルのビデオ公開中

こんにちは、こだかです。 今週のMSDN Flash ニュースレター(7/29日号)のトップ記事を書きましたが、今回も購読されていない方のために、ブログにも書いておきたいと思います。 ————————————————– Visual Studio 2008 ソリューション サンプル解説ビデオ Web 上で続々公開! 先月より、Visual Studio 2008 の活用ポイントを紹介する Visual Studio 2008 ソリューション サンプルを公開しましたが、今回、より詳細な解説を行う Web キャスト (ビデオ) を作成いたしました。 Visual Studio 2008 ソリューション サンプルの狙いは、Visual Studio 2008 に実装された新しいテクノロジが、実システムの中で「どのように優位であるのか?」あるいは、「どのような場面で使うべきなのか?」を実際のサンプル システムを見ていただくことで、ご理解いただく点にあります。 しかし、ソリューション サンプルのダウンロードを行ってみたものの、多くのプロジェクトやソース コードが存在して「知りたいポイントがぼやけてしまう」「作り込みの完成度が高すぎて…」と思われてしまった方のために、今回のビデオでは、使用テクノロジとして、ユーザー インターフェイス部分である WPF、ASP.NET AJAX、そしてサービスの構築部分では WCF、WF、さらにデータ アクセス部分では LINQ を中心に、テクノロジの切り口でポイントを絞り解説いたします。 なぜ、このテクノロジを選択するのか? どうして、このような設計になっているのか? そして、実際どのように使用するのか? など、新しいテクノロジを選定するにあたり疑問に思われる点をダウンロードいただける動くサンプル、解説ビデオ、ソース コードなどと共に、五感を通じて実感していただければと思います。 今後も解説ビデオは続々と公開される予定です。ぜひご期待ください。 •Visual Studio 2008 ソリューション サンプル…

2

Visual Studio 2008 Ready Day

皆様、あけましておめでとうございます。年末年始の休みで、すっかり怠けモードになってしまったこだかです。さて、先日も少しお話しました、Visual Studio 2008 Ready Dayが来る1/21に開催されます。(残席あとわずかだそうですので、ご興味のある方はお急ぎください。)http://www.microsoft.com/japan/msdn/events/vs2008/このイベントでの登壇内容が決定しました。こだかは、Office開発のお話をさせていただきます。今回は、Visual Studio 2008のイベントですので、.NETの開発は知っているけど、Office開発?と言った方を対象に、Officeを使用したシステム構築を解説します。したがって個々のテクノロジーは、あまり深堀せずに、「Officeってこんな風にシステムを構築できるんだよ」といったメタイメージをお伝えしていきたいと考えています。実は、このセッションともう一つ、「.NET Framework 3.5 によるエンタープライズ アプリケーションの開発」にも、少しだけお話するかもしれません。と言うのは、2つのセッションを2人のエバンジェリストで作成しており、(こだかと松崎さんです)Officeの話にも松崎さんが途中から登場します。SharePointServerと言えば、松崎さんの名前を思い浮かべる方もいるかもしれませんが、そのあたりの濃い話を期待しましょう!? それでは、今年もよろしくお願いします。こだかたろう


Visual Studio 2008 (RTM) 日本語版がリリースされました

こんにちは、こだかです。 タイトル通り、Visual Studio 2008 日本語版がリリースされました。(http://www.microsoft.com/japan/presspass/detail.aspx?newsid=3300) これに伴いまして、”Visual Studio 2008 Ready Day”というイベントが開催されます。 (http://www.microsoft.com/japan/msdn/events/vs2008/)私も何らかの形で、かかわる予定ですが(セッションなどの詳細は未定なんです)ご興味のある方は、ぜひご参加ください。(無料です)Scott Guthrie (スコット・ガスリー)が来日することになっています。ちなみに、本日このあとオフラインセミナーなのですが、使用するのはBeta2になります。期待されていた方、もしいらっしゃいましたら申し訳ありません。 こだかたろう   

1

Visual Studio 2008 Beta2 バーチャル ラボが公開されました

こんにちは、こだかです。 すでに、MSDN Flashでご報告しているのですが、Visual Studio 2008 Beta2 バーチャル ラボが公開されました。今回作成したものは、以下の2つです。 MSDN バーチャル ラボhttp://www.microsoft.com/japan/msdn/virtuallabs/・Visual Studio 2008 ワークショップ : LINQ を活用したデータ アクセス プログラミング・Visual Studio 2008 ワークショップ : WCF と WF の統合 私もレビューに参加したのですが、非常によくまとまった内容になっています。ただ、コーディング量が比較的ありますので、初めに、マニュアルをよく読んでから取り掛かることをお勧めします。 こだかたろう


TableAdapterManager って?

こんにちは、こだかです。 ちょっと前の事です。型付データセットを作成して、適当にコーディングをしていたときに気がついたのですが、「まず、Dataset を作って、次に TableAdapter を作って・・・」「っん?」 TableAdapeterManager なるものが見えます。まぁしかし、特に気にせずコーディングしていました。で、今度は、データバインドを行うプログラムを作成してみたところ、         private void jobsBindingNavigatorSaveItem_Click(object sender, EventArgs e)        {            this.Validate();            this.jobsBindingSource.EndEdit();            this.tableAdapterManager.UpdateAll(this.pubsDataSet);        } といった形で、暗黙的に追加されるコードにも使われているんですね。よく見ると、データコンポーネントの中にもいたりします。 こうなってくると、そろそろ無視できませんので、軽く調べてみます。(ようやくですね・・・)どうも Visual Studio 2008 より、型付データセットを作成したタイミングで、同時に出来るようです。DataSet.Designer を確認してみると、TableAdapterManagerは、内部に TableAdaper の参照をもっていて、例えば前述の UpdateAll のソースですが、複数の TableAdaper の更新処理をトランザクション配下で実行してくれています。つまり、こんなメリットがあるということです。例として、親子関係のある2つのテーブルに対して、データの連鎖削除を考えてみます。親を削除した場合、関連する子供も同時に削除するといった場合です。 まず、以下のように2つのDatatableからデータを削除して、            //employeeテーブルから該当レコードを削除            DataRow[] rws = jobsDataSet.employee.Select(“job_id = ‘” + this.job_idTextBox.Text + “‘”);            foreach (DataRow rw in rws)            {               rw.Delete();            }             //jobsテーブルからカレントレコードを削除            jobsBindingSource.RemoveCurrent();           …

1

コードスニペットの使用 In Tech·Edセッション

こんにちは、こだかです。 このブログは、TechEdセッション終了後に書いています。今回は人気のあるセッションの裏セッションにもかかわらず、多くの方に参加して頂いて本当に感謝しています。 そのセッションの出来ですが、前日ホテルの自分の部屋で行ったエアセッション(つまり練習ですね・・・)では、10分オーバーだった事もあり、前半かなりのハイペースで話を行いました。そして気がつくと、予定よりなぜか10分ほど速いペースになっています。(目前にカウントダウンされるタイマーが置いてあります)何故??と半ばパニックになりつつも、逆にチャンスとばかり、予定になかったLINQやExtentionMethodなども話をしてしまいました。なかなか練習通りには行かない物ですね。 さて今回のデモンストレーションは時間の都合もあり、すべてコードスニペットを事前に作成しておき、それをコーディングでは使用いたしました。セッション終了後に質問がでましたので、参考までに、私が今回作成したスニペットの一部をご覧下さい。 <?xml version=”1.0″ encoding=”utf-8″?><CodeSnippets xmlns=”http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet”>  <CodeSnippet Format=”1.0.0″>    <Header>      <Title>Demo2_WordContent1</Title>      <Shortcut>D2_W1_P</Shortcut>    </Header>    <Snippet>      <Code Language=”CSharp”>        <![CDATA[            Globals.ThisDocument.categoriesBindingSource.MovePrevious();         ]]>      </Code>    </Snippet>  </CodeSnippet>    <CodeSnippet Format=”1.0.0″>    <Header>      <Title>Demo2_WordContent2</Title>      <Shortcut>D2_W2_N</Shortcut>    </Header>    <Snippet>      <Code Language=”CSharp”>      <![CDATA[           Globals.ThisDocument.categoriesBindingSource.MoveNext();        ]]>      </Code>    </Snippet>  </CodeSnippet>    <CodeSnippet Format=”1.0.0″>      <Header>        <Title>Demo2_WordContent3</Title>        <Shortcut>D2_W3_doc</Shortcut>      </Header>      <Snippet>        <Code Language=”CSharp”>          <![CDATA[            UserControl1 myControl = new UserControl1();           …

4