为WCF RIA服务接口DomainContext - 这是一个好方法吗?

时间:2011-08-05 20:00:42

标签: c# silverlight wcf-ria-services

我希望有一个IDataService,然后我可以用不同的服务换出来进行模拟或用于设计时数据。这是一个好方法,还是我只为自己创造问题。

public interface INorthwindContext
{
  public IDomainContext Context;
}

我尝试在Silverlight项目中使用部分类来实现如下界面:

 public partial class NorthwindContext : INorthwindContext
   {
   }

现在我可以创建一个DataService或TestDataService等,如下所示:

public class DataService : IDataService
{
    public INorthwindContext Context { get; set; }
}

我的INorthwindContext:

编辑:除非我将DomaincContext中的所有方法添加到此接口,否则我将失去需要的数据功能。每次我向服务添加新的entites时,我还必须手动更新界面。

public interface INorthwindContext
   {
      EntitySet<Category> Categories { get; }
      EntityQuery<Category> GetCategoriesQuery();
      EntityQuery<Product> GetProductsQuery();
      EntityQuery<Region> GetRegionsQuery();
      EntityQuery<Shipper> GetShippersQuery();
      EntityQuery<Supplier> GetSuppliersQuery();
      EntityQuery<Territory> GetTerritoriesQuery();
      EntitySet<Product> Products { get; }
      EntitySet<Region> Regions { get; }
      EntitySet<Shipper> Shippers { get; }
      EntitySet<Supplier> Suppliers { get; }
      EntitySet<Territory> Territories { get; }
   }

This was very helpfulhttp://www.nikhilk.net/NET-RIA-Services-ViewModel-Pattern-2.aspx

1 个答案:

答案 0 :(得分:3)

这是我为using RIA Services with MVVM推荐的模式(这是用于模拟和设计时数据的好模式)。这是John Papa的MVVM样本。