我有三张桌子 1. SalesDetails具有SalesId,ProductId,Qty,Price等字段 2. SalesPersonDtls有销售SalesId,SalesPersonId,CommPercentage等 3. SalesPerson具有SalesPersonId,firstName,lastName等字段
我有第二张桌子,因为一次销售可以由一个以上的销售人员和分拆佣金完成。 我在搜索屏幕上有各种输入,如产品名称,销售日期,销售人员姓名等。 我将模型类设为'AsQuaeryable',并将各种各样的condiotions和结果添加到列表中。 我在搜索条件中有销售人员的姓名,但我不知道如何将其包含在搜索中。你能帮忙吗?
由于 彼得
答案 0 :(得分:1)
彼得
如果我弄错了,你的商业模式的关系是这样的:
person(n)< -----> (1)销售(1)< -----> (n)详情
您将销售和人员关系放在“SalesPersonDtls”中,并将销售和详细信息关系放在“SalesDetails”中。我认为最好稍微改变一下你的实体,如果你想在你的项目变得更大更复杂的情况下获得更好的结果。
你的实体应该是这样的:
Sale
{
List<SalesDetail> details;
List<Person> persons;
...
}
SalesDetail
{
Sale
...
}
Person
{
Sale
name
...
}
现在它非常简单,如果你想要与personName相关的销售:
sales.Where(sale => sale.Persons.Any(person => person.PersonName == "your input name"));
更新: 如果您不能或不想更改模型: 首先,你需要通过it'name找到personId,然后搜索你的“SalesPersonDtls”并获得saleIds。