所以我有一个从数据库(而不是SQL)获取结果集的WCF服务 - 我可以将这些数据作为DataTable
,string[][]
等来获取。
我不能轻易使用LINQ或ADO.NET Entity Framework,因为它不是来自SQL DB。
所以我的问题是:
打包这些数据以便通过网络传输的最佳方法是什么?我可以使用Silverlight支持的任何数据结构。
什么是消费它的好方法?
有没有简单的方法将它连接到DataGrid?
答案 0 :(得分:1)
您应该将数据打包到WCF服务公开的服务实体中。
SL2中的WCF基本HTTP绑定,在SL3中您还有更多选项
<DataGrid ItemsSource="{Binding MyCollectionOfObjects}" />
答案 1 :(得分:0)
抱歉,但你做错了。
数据集已经死亡 数据集是最糟糕的做法 对于任何问题,数据集都不是可行的技术解决方案。
对于数据访问,您有多种选择:
1. 实体框架(Microsoft)
2. Linq-To-Sql (微软)
3. NHibernate / ActiveRecord (开源)
4.更多的框架属于ORM(对象关系映射器)或持久层。
要开始使用Microsoft Data平台,请允许我建议“我如何”微软数据视频@ http://msdn.microsoft.com/en-us/data/cc300162.aspx
对于通过电线传输数据,您可以选择以下几种方法:
1. 不是Web服务 - 那些也已经死了。可悲,我知道。
2. WCF
3. ADO.Net数据服务
4. RIA服务
每个可能的ORM框架选择和通信框架都有缺点和优点。人们对选择支持框架非常虔诚,所以我会避免提出建议。只需选择最适合您的方式 不,DataSet不计算在内。