かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

Silverlight

Rx + WCF RIA Services = 簡単?? その3(via 非同期プログラミングはつらいよ(2))

前回書いたプログラムですが、LINQ星人として有名なid:neueccさんからZipメソッド内で副作用のあることをするのはいくない!って言われたので書き直してみました。 private EduDomainContext ctx = new EduDomainContext(); public void Load() { this.IsBus…

Rx + WCF RIA Services = 簡単?? その2(via 非同期プログラミングはつらいよ(2))

さて、前回書いたRx + WCF RIA Services = 簡単?? via(非同期プログラミングは辛いよ)ですが、コメントで追加の要件がきました!ということでやってみようと思います。 因みにReactive Extensionsを使わない場合の実装例はこちらを見てください。 非同期プロ…

Rx + WCF RIA Services = 簡単?? via(非同期プログラミングは辛いよ)

id:wave1008さんが非同期プログラミングは辛いよという記事を書かれていますが、このように非同期プログラミングは苦痛を伴うプログラミングです。しかし、id:neueccさんがコメントで書かれていますが、現時点で便利なライブラリとしてReactive Extensionsと…

WCF RIA ServicesでDomainServiceの生成処理をのっとる方法

System.ServiceModel.DomainServices.Server.IDomainServiceFactoryを継承したクラスを作ります。 public class MyDomainServiceFactory : IDomainServiceFactory { public DomainService CreateDomainService(Type domainServiceType, DomainServiceContext…

Silverlight 5で提供予定のViewからViewModelへのイベントハンドラの設定についてConnectにフィードバックしました

何故気に入らないかはugaya40さんの記事に書いてあるので割愛です。 設計パターンのインフラ – Silverlight5のMVVMパターンサポートへの懸念ということなので、Connectにさくっとフィードバックを作ってみました。使い方あってるのか不安ですが、直接マイク…

Silverlight 5の告知

CodeZineに掲載されていました。 http://codezine.jp/article/detail/5629毎回毎回、次のバージョンの情報は楽しみですね。

PrismでMVVM(Model View ViewModel)パターンのサポート用に用意されているクラスのまとめ

Prismがバージョン4からMVVMパターンのサポートをはじめました。どんなサポートをしてくれているのか確認してみようと思います。 ViewModelのベースクラスの提供 今までViewModelクラスを作ろうとすると自分でINotifyPropertyChangedを実装したクラスを準備…

WCF RIA Services Toolkit December 2010試してみた

インストールは、Yesマンになれば出来たので割愛。早速データを取得するところまで試してみました。 DomainServiceの作成 ここらへんは変わらずです。さくっと作ってしまいましょう。 要注意なのが、Countメソッドを実装してやらないとページングとかが有効…

WCF RIA Services Toolkit December 2010のダウンロード

↓のサイトから出来るみたいです。 http://www.microsoft.com/downloads/en/details.aspx?FamilyID=6f834bf7-ffde-4d5d-8573-18541762118b動作環境を見てみるとWindows XPはサポートしてくれてるみたいです。最近の開発関係のToolkitとかってXPをばっさり切っ…

もうSilverlight 5の話しが出てますね

http://timheuer.com/blog/archive/2010/12/02/silverlight-5-revealed-at-firestarter.aspx ↑のサイトを見る限り、今回も凄い強化してくるみたいです。ますます、WPFの領域を侵してくる感じですね。 WPFとSilverlightは同じようなものなのでWPFも.NET Fwか…

Prism 4がリリースされたみたいです

SilverlightやWPFでアプリケーションを組むときに使えるフレームワークのPrism 4がリリースされてました。 MSDN:http://msdn.microsoft.com/en-us/library/gg406140.aspx CodePlex:http://compositewpf.codeplex.com/ いやぁ、これでMEFをベースにしたPris…

CodeZineでWCF RIA Servicesの記事が書かれています

http://codezine.jp/article/detail/5476 これは、読まないと!!

Prism 4.0 Drop9が超素敵な感じになってる

Composite Application Guidanceとして知られる通称Prismですが、暫く見ない間にPrism 4.0 Drop9というところまでいってました。 こいつの凄いところは、今までDIコンテナとしてはUnityを使ってましたが、MEFが使えるようになっているところが非常に素敵です…

T4 TemplateでViewModelを生成する その3「Commandにも対応」

前のやつにCommandも定義出来るように追加してみました。 namespace VMDsl { using System.Collections.Generic; // 名前空間 public class NSDef { public NSDef() { this.Classes = new List<ClassDef>(); } public string NS { get; set; } public List<ClassDef> Classes { g</classdef></classdef>…

LightSwitchの記事

メモ LightSwitchで業務アプリケーションを簡単に作ってみよう

T4 TemplateでViewModelを生成する その2「DSLちっくにする」

前回たたき台を作ったMVVM生成のためのT4 Templateですが正直あんまり楽になった気がしないです。何故かというと、クラスのメタデータの定義が非常に冗長な感じになってたからだと思います。 1プロパティしかないクラスを定義するだけで、20行以上も書かな…

T4 TemplateでViewModelを生成する その2「DSLちっくにする」

前回たたき台を作ったMVVM生成のためのT4 Templateですが正直あんまり楽になった気がしないです。何故かというと、クラスのメタデータの定義が非常に冗長な感じになってたからだと思います。 1プロパティしかないクラスを定義するだけで、20行以上も書かな…

T4 TemplateでViewModelを作る

ちょいと作ってみた。 これをひな形にやっていけばいかなぁ。もっといい方法とかあるよ!って人は教えてください。 ClassDef.ttinclude とりあえずクラスのメタデータを定義するためのクラス群 <#+ // 名前空間 class NSDef { public string NS { get; set; …

MVVMパターンでVMからViewを操作したい くどい?

何回もこのBlogで使ってるタイトルなので、そろそろクドイ感じもしますが、尾上さんのBlogに素敵なエントリが公開されてました。 http://ugaya40.net/wpf/mvvm_viewmodel_to_vew.htmlBehaviorってやっぱり素敵ですよね。 こんな風に綺麗にまとめたいな。

MVVMパターンでVMからVを操作する方法 再考

えムナウさんが考えてくれた方法は、確かに素敵だけど、コードを書く量が増えていってしまう。 http://blogs.wankuma.com/mnow/archive/2010/09/20/193090.aspx http://d.hatena.ne.jp/griefworker/20100922/how_to_use_view_function_in_viewmodel というこ…

MVVMパターンでVMからVに通知する方法

2010/09/22 追記 多分えムナウさんの言ってた方法はid:griefworkerさんのやり方のほうが正しいです。「MVVM パターンで ViewModel から Viewを操作する方法」 えムナウさんのページで以下のような方法が紹介されていました。 MVVM パターンで VM から VIEW …

WCF RIA ServicesでSOAP endpointを公開するためのメモ

ダウンロードするもの WCF RIA Services Toolkit サーバー側に追加するアセンブリ C:\Program Files\Microsoft SDKs\RIA Services\v1.0\Toolkit\Libraries\Server\Microsoft.ServiceModel.DomainServices.Hosting.dll web.configに追加するもの <system.serviceModel> <domainServices> <endpoints> </endpoints></domainservices></system.servicemodel>

WCF RIA Services Toolkit

ずっと何のためにあるのかわからなかったWCF RIA ServicesのToolkitですが、見てみるとこんな機能が・・・。 LinqToSql DomainService Soap endpoint - This enables you to expose a soap endpoint for your DomainService JSON endpoint - This enables yo…

Frameを使ったナビゲーションの間にアニメーションを入れる

SilverlightのFrameを使ったナビゲーションですが、こいつはパッパッと切り替わる感じです。RIAっぽくないです。 RIAっぽくしようと思うと、何かしらのアニメーションをやってみたいってもんですよね。 やり方は簡単で、Visual Stateを2つ定義して、片方は…

WCF RIA ServicesのDomainContextをモックする方法

WCF RIA Serviceは非常に便利なんですが、ViewModelからDomainContextを使うと、途端に単体テストがしづらいという悲しいことが起きてしまいます。 ということで、DomainContextをラップするクラスを作って、そいつをモックにしてやるという方法がありますが…

Expression Blend 4で丸いボタンを作ってみた

動画撮影の練習も兼て丸いボタンを作ってみました。マウスをボタンの上に持っていくと色がじわ〜っと変化したりクリック時にポコッと動いたりします。 作り方は、以下からどうぞ。今回は、YouTubeで画質あげれば超綺麗に見えるはずです! ニコニコ動画にもア…

Expression BlendでTextBoxの見た目をカスタマイズ

前に作ったid:griefworkerさんが作ったGAE + Silverlightのアプリの見た目をカスタマイズした記事で作ったTextBoxですが、これを作る手順はどんなもんかというのを動画にしてみました。 MVVMパターンのViewとViewModelの分離具合がどんなものか試してみた こ…

Expression Blend で、リキッドレイアウト

Silverlightアプリケーションを作ったときに、ブラウザ全体を覆うようなアプリケーションを作りたいことは多々あると思いますが、実はExpression Blendで新規作成したSilverlightのプロジェクトはブラウザ全体を覆うようになっていません。 新規作成したアプ…

昔の記事ですがBlendの使い方の参考になるメモ

マイクロソフトの赤間さんのBlog「とあるコンサルタントのつぶやき」の2年前の記事でBlend使ってるのがありました。 当時は、デザイナで直接弄らないほうがいいと書いてあったりするのが歴史を感じます。Blend 4では普通にいじくってて大丈夫なので進歩した…

本の紹介 Silverlight 実践プログラミング

Expression Blendを使ったコンテンツの作成方法がちゃんと書いてある日本語の本としては唯一の本かもしれません。 非常にSilverlightを使ったリッチな画面の作成について参考になります。Expression Blendが3を使ってますが、4でも全然いけます。これは、Exp…