このコードのパフォーマンスと読みやすいコードを手助けできますか?別のクラスのサブリストに含まれるリスト内の要素を検索
public partial class Prodotti
{
public int IDProdotto { get; set; }
public List<string> SerialNumbers { get; set; }
public List<string> AllSerialNumbers
{
get
{
return cfgDb.getSerialByProduct(this.IDProdotto) .Select(c => c.SerialNumber).ToList();
}
そしてprdIdxは一覧です:
var prd = new List<Prodotti>();
foreach (var prodotto in db.Prodotti)
foreach (var prdId in prdIdx)
if (prdId._idProdotto == prodotto.IDProdotto)
foreach (var prodottoSeriali in prodotto.AllSerialNumbers)
if (prdId.SerialNumber == prodottoSeriali)
if (prdId.SerialNumber == prodottoSeriali)
if (prd.Count(c => c.IDProdotto == prdId._idProdotto) == 1)
prd.Single(c => c.IDProdotto == prdId._idProdotto).SerialNumbers.Add(prdId.SerialNumber);
else
{
var tmpprd = new Prodotti()
{
IDProdotto = prodotto.IDProdotto,
...
Descrizione = prodotto.Descrizione,
};
tmpprd.SerialNumbers.Add(prdId.SerialNumber);
prd.Add(tmpprd);
}
db.Prodotti
私は成功せず、LINQでそれを翻訳しようとしてい
public class cfgProdotti_Noleggio : cfgClass
{
public int idseriale { get; set; }
public int _idProdotto { get; set; }
public string SerialNumber { get; set; }
:
var prd = db.Prodotti.ToList()
Where(t2 => prdIdx.Any(t1 => t1._idProdotto== t2.IDProdotto))
.ToList();
私はあなたがオブジェクトにあなたがEFを使用するか、これがLINQのですされていますhttp://codereview.stackexchange.com/ – Mahdi
に投稿すべきだと思いますか? – octavioccl
db.ProdottiはEFの生成クラスです – RazWorks