0

私はXamarin.Androidアプリケーション用に構築されたポータブルクラスライブラリでNotifyCollectionChangedEventArgsやNotifyCollectionChangedActionなどのクラスを使用しようとしています。これらはSystem.Collections.Specialized名前空間の一部です。System.Collections.SpecializedはXamarin.AndroidのPCLプロファイルで利用できますか?

このPCLライブラリをコンパイルしようとすると、コンパイラは上記の名前空間を欠落として報告します。私は、このエラーをなくすPCLプロファイルを見つけることができませんでした。

この名前空間をPCLプロファイルで使用することが可能かどうか、またはXamarin.AndroidとXamarin.iOSプラットフォームでこの名前空間を使用するためのオプションは何ですか?

+1

本当に必要な場合を除いて、.NET標準ライブラリと.NET Platform StandardsをPCLに優先する必要があります。 Xamarinはすぐにそれらをプロジェクトテンプレートなどに完全に適応させるべきです。 –

+0

@LexLi、これがリリースされた機能としていつ期待できるのですか?週または月? – gyurisc

+0

本当にハックしたいのなら、今すぐ.NET Coreで遊ぶことができます。しかし、あなたがむしろ待っていれば、VS vNextは数ヶ月先のより良いオプションになるはずです。あなたの答えには、 –

答えて

2

答えははいです。ただし、選択しているPCLプロファイルによって決まる可能性が最も高いです。たとえば、Silverlightをターゲットにしている場合は、これらが利用できない可能性があります。

ただし、新しいPCLプロファイルを作成すると、これらの名前空間が解決され、ObservableCollectionにオブジェクトを追加する際にこれらの名前空間がうまく動作します。

EDIT:

プロファイル78は、から構成されています.NET 4.5以降、Windows 8以降、WinPhone 8以降、Winphone Silverlightの8、ストアアプリ(Windowsの8)とXamarin

するためにはただし、このプロファイルは、NotifyPropertyChangedとCollectionChangedに必要な2つの名前空間をサポートしています。プロジェクトのプロパティ(右クリック>プロパティ)に移動します。 [ライブラリ]タブで、[変更]を押して、関連するSilverlightの選択を解除します。 Silverlightを使用しないでプロファイルに切り替える必要があります。これにより、代わりにプロファイル7が発生します。

現在、マイクロソフトとNuGetチームは、Netstandardと呼ばれるこれらのプロファイルとは別のものに切り替えています。これにより、今後これを簡単に行うことができます。

+0

ありがとう。どのようなプロファイル78がどのように構成されているのかを知るには?プロファイルからSilverlightプラットフォームを削除するにはどうすればよいですか? Visual Studioは何らかの理由でSilverlightをいつも取り戻しているようです。 – gyurisc

関連する問題