【发布时间】:2010-06-29 13:09:37
【问题描述】:
我已经看了很长一段时间的 sn-ps 和教程,但我找不到完整的答案 - 只是一些零碎的东西。
我有一个包含 3 个表的数据库:
产品:
- id 唯一标识符
- 名称 nvarchar(50)
类别:
- id 唯一标识符
- 名称 nvarchar(50)
产品类别:
- fk_product 唯一标识符
- fk_category 唯一标识符
显然其中涉及到多对多的关系——一个产品可以有多个类别,一个类别可以应用于多个产品。
下一步是从数据库生成 ADO.NET 模型和域服务。这非常简单,我认为是标准的。
现在在视图中,我使用了 Silverlight 4 Toolkit 提供的 DataGrid 和 DataForm。
<toolkit:DataForm ItemsSource="{Binding Data, ElementName=ProductsSource}" Name="dataForm1" AutoCommit="True" />
和
<sdk:DataGrid x:Name="dataGird" ItemsSource="{Binding Data, ElementName=ProductsSource}" AutoGenerateColumns="True" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" />
数据源 ProductsSource 定义如下:
<riaControls:DomainDataSource Name="ProductsSource" QueryName="GetProductsQuery" AutoLoad="True">
<riaControls:DomainDataSource.SortDescriptors>
<riaControls:SortDescriptor Direction="Ascending" PropertyPath="title" />
</riaControls:DomainDataSource.SortDescriptors>
<riaControls:DomainDataSource.DomainContext>
<domain:PortfolioDomainContext />
</riaControls:DomainDataSource.DomainContext>
</riaControls:DomainDataSource>
现在:在视图中呈现来自这种多对多关系的数据的最佳方式是什么?有没有办法在 DataForm 中为具有多对多关系的属性显示启用多选的列表框?
【问题讨论】:
标签: c# .net many-to-many wcf-ria-services silverlight-toolkit