2行のコードがあります。1つは
AllItems().Where(c => c.Id== id)
.Select(d => new Quality(d.QualityType)).ToList();
ともう1つ
AllItems().Where(c => c.Id== id).ToList()
.Select(d => new Quality(d.QualityType)).ToList();
唯一の違いは、2番目ToList()
のステートメントがステートメントの後に呼び出されるWhere
ことです。2番目のステートメントは問題なく機能します。
最初のステートメントでは、パラメーターを持つコンストラクターの代わりに、デフォルトのパラメーターなしのコンストラクターがヒットします。したがって、リストは作成されますが、リスト内のオブジェクトは、d.QualityTypeではなくデフォルト値で初期化されます。
問題のファイルの完全なソースは、(メソッド:GetBestQualityInHistory)で確認できます。
https://github.com/kayone/NzbDrone/blob/master/NzbDrone.Core/Providers/HistoryProvider.cs
ToList
**編集:さらに調査した結果、Lastがsubsonicに置き換えられた場合、これはSubSonicのバグのようOrderBy
ですThe construtor 'Void .ctor(NzbDrone.Core.Repository.Quality.QualityTypes, Boolean)' is not supported
。