如何在发票标题的详细信息视图中显示发票明细

时间:2014-03-10 21:23:06

标签: asp.net-mvc entity-framework razor

我有两个表:invoice_header(PK:org_number,supplier_number,invoice_number)和invoice_line(PK:org_number,supplier_number,invoice_number,seq)。 我的索引视图显示来自invoice_header的记录。我试图让Details视图显示invoice_line表中的相应记录。

我收到错误:“传递的主键值的数量必须与实体上定义的主键值的数量相匹配。 参数名称:keyValues“

错误在这里: Controller

以下是Index视图中的相关部分: Index view

我怀疑我需要为“seq”列提供一些内容,该列是invoice_line上复合PK的一部分。我希望看到所有与org_number,supplier_number和invoice_number匹配的记录,无论seq。

1 个答案:

答案 0 :(得分:0)

如果你正在使用我怀疑你的Entity Framework,那么Find是错误的方法。查找是按主键搜索,这需要您输入组合键的值。在这种情况下,我相信你想要的方法是哪里。这将允许您通过值搜索而不是通过键搜索。

请记住,哪里不会遇到PK索引并且可能会出现性能问题。你会想做一些测试。您可以查看以下链接,查看EF的查询类型比较。

http://msdn.microsoft.com/en-us/data/jj573936.aspx