これに関して、Visual Studio 2010 には何らかの欠陥があると思います。System.ServiceModel
およびSystem.ServiceModel.Web
アセンブリは自動的に参照されるように見えますが、既定ではそうではなく、対応する名前空間は使用できません。
この問題を回避するには、 [参照の追加] ダイアログを開きます。すべてのアセンブリが参照されているように見えますが、どちらもプロジェクトの参照リストには含まれていません。
目的のアセンブリを実際にプロジェクトに追加するには、リストからアセンブリを選択します。ここで、最初に [削除] をクリックし、すぐに [追加] をクリックします(または、リストでアセンブリを 2 回ダブルクリックします)。これを行うと、「削除/追加」されたアセンブリがプロジェクトの参照リストに明示的に表示されるようになります。
入力すると、対応する名前空間とクラスが利用できるようになりました。
プロジェクトを正常にビルドできます。
これは、.NET Framework 4+、Silverlight 4+、WP7+、および Windows ストア アプリなど、最も広範なプラットフォームを含む場合でも機能するようです。これは、最新の PCL アドインを使用して VS 2010 でテストされています。
Visual Studio 2012 では、.NET ポータブル サブセットはモノリスとしてリストされ、サブセットの個々のアセンブリを参照 (非参照) することはできません。ただし、VS 2012 ではSystem.ServiceModel
、新しいポータブル クラス ライブラリを作成すると、etc. アセンブリへのアクセスが自動的にカバーされるようです。
上記はすべて、Express Visual Studio 以外のバージョンの Windows 7 システムでテストされています。