PFE Core Library for Dynamics CRM が CodePlex と NuGet で公開されました!

みなさん、こんにちは。

先週、北米プレミアフィールドエンジニアチームが、Microsoft Dynamics CRM
2011 および 2013 向けのライブラリを公開したので、以下に紹介します。

情報元: PFE Core Library for Dynamics CRM on CodePlex and NuGet

=====================================================
先週、これまで提供してきたアドバイザリーサービスの成果の一部として、
Microsoft Dynamics CRM 用 C# ライブラリを公開しました。

アドバイザリーサービスでは常に似たような質問があり、こちらからも推奨
内容を伝える他、サンプルコードの依頼に関しても、同じような内容が非常
に多くあります。そこで、より迅速にこれらの要望に応えるためこれまでに
提供してきた知識や内容を集約しはじめ、最適化し、ようやくライブラリの
公開に漕ぎつけました。このように知識を共有することで、より多くの方が
既にお持ちの知識や経験を、最大限に活用できると考えています。

ライブラリ概要

PFE Dynamics Core library for Dynamics CRM は C# のマネージドライブラリ
であり、Dynamics CRM サービスを利用する .NET Framework プロジェクト
で直接参照して利用します。ライブラリには以下 2 つの目的があります。

1. 容易な認証とサーバーとのコミュニケーションチャネルの確立
2. スループットを最大化するための並立処理のインターフェースの提供

1 は SDK で提供されている内容に基づいて構築されており、2 に関しては
IDiscoveryService と IOrganizationService を元に、並立処理を抽象化した
リクエストを実行するように構築しています。すでに CRM サービスに
対して多くのリクエストを実行するプログラムがある場合、非常に簡単に
処理を並立処理化することが可能です。具体的には XrmServiceManager.cs
および ParallelServiceProxy.cs を確認してください。

入手方法

プロジェクトにアセンブリ参照を直接追加する場合 Dynamics CRM 2013 (v6)
および Dynamics CRM 2011 (v5) バージョンが NuGet で公開中です。NuGet
でパッケージを導入すれば、今後の更新も容易に取得できます。またこの
パッケージは、関連する CRM SDK Core Assemblies パッケージにもリンクを
しているため、一気に必要なすべてのアセンブリを参照追加できます。

もしライブラリのソースコードを参照したい場合、CodePlex に公開中です。
ソースコード以外にもドキュメントやリリースノートが提供され、フィード
バックを行うことも可能です。

NuGet パッケージ
CRM 2013: https://www.nuget.org/packages/Microsoft.Pfe.Xrm.CoreV6/
CRM 2011: https://www.nuget.org/packages/Microsoft.Pfe.Xrm.CoreV5/

CodePlex プロジェクトサイト
https://pfexrmcore.codeplex.com/

今後の予定

現在いくつかの最適化を含んだマイナーバージョンを用意しています。また
ドキュメントとライブラリを利用したサンプルを提供する予定です。以降は
今後提供予定のリリースに対応するつもりです。

最後に日々行っている業務から得た経験や、blog やツイッターのフィード
バックを元に機能を追加していきたいと考えています。

このライブラリを公開したことで、Microsoft Dynamics CRM サービスを利用
する際のベストプラクティスを学び、開発している .NET アプリケーションが
最大限のパフォーマンスを引き出せるようになることと、繰り返し記述する
コードが減ることを期待しています。是非似たような問題やチャレンジに遭遇
した場合、またより改善するためのアイデアがあればお聞きしたいです。是非
CodePlex プロジェクトサイトからフィードバックをお願いします!

=====================================================

今後サンプルが公開されれば、随時紹介していきますのでお楽しみに。

- 中村 憲一郎