0

次のタイプのリストコレクションがあります

CoordinateCollection pointCoordinates = new CoordinateCollection();

型ベクトルのリストを追加します。重複したエントリをリストから削除したい

私はこのようにしようとしています

pointCoordinates = pointCoordinates.Distinct();

それは私にエラーを与える

cannot implicitly convert type 'system.collections.generic.ienumerable<SharpKML.Base.Vector> to SharpKML.Dom.CoordinateCollection

これを解決するのを手伝ってください。ユニークなレコードが欲しい

4

3 に答える 3

1

CoordinateCollection実装ICollection<Vector>してVectorオーバーライドするので Equals+GethashCodeを使用できますDistinctCoordinateCollectionただし、コンストラクターを使用して新しいものを作成する必要があります。

pointCoordinates = new CoordinateCollection(pointCoordinates.Distinct());

に慣れていないことに注意してください。ソースコードSharpKMLを見てきました。

于 2014-02-11T16:46:16.827 に答える
0

Distinct は を返しますIEnumerable<SharpKML.Base.Vector>。であっても のインスタンスではない可能性があるため、その型をCoordinateCollectionインスタンスに割り当てることはできません。IEnumerable<SharpKML.Base.Vector>CoordinateCollection

を入力として受け取るCoordinateCollectionコンストラクターを作成/使用するインスタンスが必要な場合は、それ以外の場合は、変数をそのように宣言します。IEnumerable<SharpKML.Base.Vector>IEnumerable<SharpKML.Base.Vector>

于 2014-02-11T16:47:22.197 に答える