我是通过一条曲折而令人沮丧的路线到达这个困境的,但我将从我现在所处的位置开始。有关信息,我正在使用 VS2010、Silverlight 5 以及最新版本的 Silverlight 和 RIA 工具包、SDK 等。
我的数据库中有一个视图(它现在实际上是一个索引视图,但这对行为没有影响)。出于测试目的(包括测试我的理智),我将视图复制为表(即相同的列名和定义),并将所有视图行插入表中。因此,如果我从查询分析器中的视图或表中选择 *,我会得到相同的结果。到目前为止,一切都很好。
我在 Silverlight 业务应用程序 Web 项目中创建了一个 EDF 模型,包括所有对象。
我基于模型创建了一个域服务,它为视图和表以及关联的查询对象创建了上下文类型和元数据。
如果我通过表查询在我的 Silverlight 项目中填充一个 Silverlight 列表框,它会返回表中的所有数据。
如果我通过 View Query 填充相同的 ListBox,它只返回一行,始终是集合中的第一行,但是它是有序的。事实上,如果我通过调试器深入研究内部工作原理,当它在服务中执行 ObjectContext Query 时,它会返回正确行数的结果集,但所有行都是相同的!如果我按升序排序,我得到第一行的 n 个副本,降序我得到最后一行的 n 个副本。
谁能把我从这里的痛苦中解脱出来,并告诉我为什么 View 不起作用?
阿德