2010-03-15 84 views
1

我想使用服务(WCF/RIA/Web)从实体数据模型类(可能是NHibernate类)获取数据,并专门为视图层绑定做好准备。使用MVVM中的服务

我有几个Silverlight页面,所以我应该为每个页面创建单独的服务类?或者创建一个接口,所有方法都将在一个服务类中实现它?

您对我的服务有帮助吗?

回答

2

我会像在存储库模式中那样为数据访问提供Service抽象。 拥有与IDataService类似的接口,然后在其中实现包含该服务的所有代码。 NHibernate,WCF Ria Service,Webservice也可以有一个实现。

下面是一个例子:http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2807 这里是另一个问题: http://msmvps.com/blogs/theproblemsolver/archive/2009/02/18/getting-started-with-the-repository-pattern-in-silverlight.aspx

希望这有助于..

+0

第二个链接给我解释一下模式非常好。我只是看看这个例子的代码来理解它如何绑定到DataContext上。你认为可以绑定ListBox的ItemSource属性吗?我只开始学习NHibernate,我相信你的建议对我很有帮助! :) – netmajor 2010-03-28 17:36:32

+0

当然你也可以使用Listbox ItemSource。您可以在Silverlight页面上加载事件。然后绑定到ItemsSource。另外寻找MVVM,这是另一种将可视化业务逻辑分离的模式。 HTH – silverfighter 2010-03-29 09:26:33