Asp.net 关系从一对多更改为多对多需要更新listview
我有一个主键为DistributionID的分发表和一个主键为RecipientID的收件人表。此表以前是1对多,但现在需要使用intermedate表更改为多对多 我有一个EntityDataSource,它提供了一个listview,允许对通讯组列表进行简单的操作Asp.net 关系从一对多更改为多对多需要更新listview,asp.net,entity-framework,listview,entity-framework-4,entitydatasource,Asp.net,Entity Framework,Listview,Entity Framework 4,Entitydatasource,我有一个主键为DistributionID的分发表和一个主键为RecipientID的收件人表。此表以前是1对多,但现在需要使用intermedate表更改为多对多 我有一个EntityDataSource,它提供了一个listview,允许对通讯组列表进行简单的操作 <asp:EntityDataSource ID="edsRecipients" runat="server" ConnectionString="name=DistributionEntities" DefaultCont
<asp:EntityDataSource ID="edsRecipients" runat="server" ConnectionString="name=DistributionEntities" DefaultContainerName="DistributionEntities"
EnableDelete="True" EnableFlattening="False" EnableInsert="True" EnableUpdate="True" EntitySetName="Recipients"
Where="it.[DistributionID]=@DistributionID">
<WhereParameters>
<asp:ControlParameter ControlID="ddlSelectDistributionList" ConvertEmptyStringToNull="true" DbType="Int32" Name="DistributionID" />
</WhereParameters>
</asp:EntityDataSource>
是否有任何方法可以更改where子句以处理新表?如果需要,新表命名为DistributionRecipients。如果没有,我可以用某种方法将分发。EF类的收件人绑定到代码隐藏中的列表视图,该视图将使用自动编辑和删除功能,或者我需要添加代码来处理它们吗?您可以修改EntityDataSource的where属性以包含子查询收件人实体的分发导航属性:
EXISTS(SELECT Distributions.DistributionID FROM it.Distributions WHERE Distributions.DistributionID=@DistributionID)