カスタム モデルを使用した LINQ クエリが 1 つあります。メソッドを使用して、モデル プロパティに値を割り当てたかっただけです。しかし、カスタム モデルを使用しようとすると、次のようなエラー メッセージが表示されます。
LINQ to Entities はメソッド 'System.String GetPONo(Ent, System.String)' メソッドを認識せず、このメソッドはストア式に変換できません。
コード
var model = (from p in db.PoDetails
select new porders
{
Category = p.Category,
PONO = GetPONo(p, p.Category),
}).ToList();
方法
public string GetPONo(PoDetail p, string ASD)
{
if (ASD == "B")
{
var PoNo = (from pord in db.Porders where pord.Id == p.PoId select pord.No).FirstOrDefault();
return PoNo;
}
else
{
var PoNo = (from porder in db.Porders
where porder.Id == (from rec in db.RecommendResources where rec.Id == p.BibId select rec.PoId).FirstOrDefault()
select porder.No).FirstOrDefault();
return PoNo;
}
}