BT

InfoQ ホームページ ニュース Silverlight 4は、.NETとアセンブリを共有する

Silverlight 4は、.NETとアセンブリを共有する

ブックマーク

原文(投稿日:2009/12/03)へのリンク

Silverlight 2と3に組み込まれていたアセンブリは、.NET Frameworkとのバイナリ互換がなかった。もし、同じコードを使用したい場合、2回のコンパイルが必要だった。Silverlight 4と.NET 4では、.NET 4に含まれているアセンブリは、Silverlightでも使用することができるようになった。

Silverlightアセンブリを.NETで読み込むためには、以下のアセンブリだけを参照するようにするとよいだろう。

  • Mscorlib
  • System
  • System.Core
  • System.ComponentModel.Composition
  • Microsoft.VisualBasic

System.XmlやSystem.Netなどのその他のアセンブリ、またいかなるUIライブラリも、現在サポートされていない。これは、共有データオブジェクトを受けることは可能だが、サービスの呼び出しや自身のXMLシリアライゼーションをハンドルするアクティブレコードは、議論の余地がないことを意味する。

Silverlightが.NETアセンブリのロードをサポートしないことを明示していることに注意するべきである。SilverlightのUI以外のパーツは、.NETのサブセットである。彼らは、こうした方が、存在しないクラスやメソッドに対処するよりも、エラーが少ないと考えたようだ。

もし、Silverlightと.NET間の非互換性に関するレポートやアセンブリのポータビリティについて詳しく学びたいのであれば、CLR Team blogを参照してほしい。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

コミュニティコメント

  • Re: Silverlight 2と3に組み込まれていたアセンブリは、.NET Frameworkとのバイナリ互換がなかった

    by 康彦 山本 /

    スパムの可能性があると認識されました。モデレーターが確認し問題がなければ24時間以内に公開します。その際あなたへの通知は行われませんのでご了承ください。

    > Silverlight 2と3に組み込まれていたアセンブリは、.NET Frameworkとのバイナリ互換がなかった。
    > 同じコードを使用したい場合、2回のコンパイルが必要だった。

    私も、 そう思っていました。

    しかし、 原文のコメント "Silverlight 2 and 3 assemblies ARE binary compatible" のリンク先によれば、 テスト プロジェクトから Silverlight のプロジェクトに参照を掛けて使うことは出来る、 とのこと。
    実際に VS2008SP1 + Silverlight 3 Tools + KB962866 で試してみたら、 その通りでした。

    また、 VS2010 beta2 日本語版でも、(不具合は VS2008 より多いものの) 同様に出来ました。
    www.tdd-net.jp/2009/12/vs2010b2j-mstes.html

    どうやら私は、 「バイナリ互換が無い」 という言葉を誤解していたようです。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

BT

あなたのプロファイルは最新ですか?プロフィールを確認してアップデートしてください。

Eメールを変更すると確認のメールが配信されます。

会社名:
役職:
組織規模:
国:
都道府県:
新しいメールアドレスに確認用のメールを送信します。このポップアップ画面は自動的に閉じられます。