構造体型 レコード型 または共用体型 '{0}' に 'StructuralEquality' 属性がありますが コンポーネント型 '{1}' は 'equality' 制約を満たしていません

構造体型、レコード型、または共用体型 '{0}' に 'StructuralEquality' 属性がありますが、コンポーネント型 '{1}' は 'equality' 制約を満たしていません。
構造体の既定のコンストラクターはバインディングを実行しないため 構造体には 'let' バインディングを含むことができません 型のプライマリ コンストラクターに引数を追加してください 構造体内部の匿名メソッド ラムダ式 またはクエリ式は 'this' のインスタンス メンバにアクセスできません 'this' を匿名メソッド ラムダ式 またはクエリ式の外部のローカル変数にコピーして そのローカルを使用してください 構造体型 レコード型 または共用体型 '{0}' に 'StructuralComparison' 属性がありますが コンポーネント型 '{1}' は 'comparison' 制約を満たしていません 構造体型 レコード型 または共用体型 '{0}' に 'StructuralComparison' 属性がありますが 型パラメーター '{1}' は 'comparison' 制約を満たしていません 型パラメーターに 'comparison' ... 構造体型 レコード型 または共用体型 '{0}' に 'StructuralEquality' 属性がありますが コンポーネント型 '{1}' は 'equality' 制約を満たしていません 構造体型 レコード型 または共用体型 '{0}' に 'StructuralEquality' 属性がありますが 型パラメーター '{1}' は 'equality' 制約を満たしていません 型パラメーターに 'equality' 制約を追加してください ... 構造体型 レコード型 または共用体型 '{0}' には 'Object.Equals' の明示的な実装があります 'Object.GetHashCode()' に対応するオーバーライドを実装してください 構造体型 レコード型 または共用体型 '{0}' には 'Object.GetHashCode' の明示的な実装があります 'Object.Equals(obj)' に対応するオーバーライドを実装してください 構造体型 レコード型 または共用体型 '{0}' には 'Object.GetHashCode' または 'Object.Equals' の明示的な実装があります この型には 'CustomEquality' 属性を適用してください