如何使用通用存储库与EF异步加载数据?

时间:2012-09-07 19:43:18

标签: c# silverlight entity-framework wcf-ria-services silverlight-5.0

我在我的Silverlight 5.0应用程序中使用实体框架和RIA服务。

我意识到要从客户端获取数据,您必须在异步过程完成时从事件中获取数据。

我在想是否可以创建一个通用存储库,其中包含DatabaseContext并获取数据。

有人可以指导如何开始这部分。

1 个答案:

答案 0 :(得分:0)

Joel在这里有一个很棒的教程:http://joel.net/generic-iqueryable-repository-for-ado.net解释了通用存储库以及如何实现它。

编辑:Asynchronus部分: 我不确定(现在仍然不是)您是否希望客户端和服务器之间的异步部分或实际存储库是异步的。我认为这是后者,所以我先解决它。最简单的方法是为存储库提供存储库在完成执行查询后立即调用的委托。

public class MyRepository:IMyrepository
{
    public IEnumerable<MyReturnedObject> GetThoseObjects(Delegate ToCallWenDone,rest of parameters)
    {
         //get the data
         //invoke the delegate
    }
}

如果您希望客户端的呼叫异步,请查看以下帖子:http://forums.silverlight.net/p/168335/385493.aspx

希望这有帮助。