0
請幫助我用正確的謂詞邏輯。遏制的謂詞邏輯
我有一些產品的列表,我想在用戶指定的某些區域顯示。
我的產品類是下一個:
public class Product
{
public int id { get; set; }
public string name { get; set; }
public List<string> regions { get; set; }
}
我的設置類是:
public class LocalSettings
{
public List<string> Regions { get; set; }
}
因此,如果用戶選擇區域,例如邏輯是未來,歐洲則所有產品以「public List<string> regions
「必須選擇包含歐洲。
我應該如何正確地在謂詞中寫這個?
這裏是我的起點:
Predicate<Product> ProductFinder = (Product p) => { return DataManager.Instance.CurrentSettings.Regions.Contains(//HERE MUST BE ANY OF p.regions); };
編輯的第1題:
感謝幫助我已經寫了這個:
Predicate<Salesplay> SalesPlaysFinder = (Salesplay p) => { return DataManager.Instance.CurrentSettings.Regions.Intersect(p.regions).Any(); };
但我p.regions是一個列表我需要將其轉換爲字符串
我可以做類似.Intersect(p.regions.ToString()嗎?
您應該從lambda參數中刪除類型名稱。 – Magus
@Magus是的好點。這是從變量聲明中推斷出來的。 –
不好意思打擾了,但是我怎樣才能在lambda表達式中進行轉換? 查看我編輯的問題編號1 – Cheese