Entity framework DbContext,连接Web服务而不是数据库

Entity framework DbContext,连接Web服务而不是数据库,entity-framework,dbcontext,Entity Framework,Dbcontext,我正在尝试使用EF连接到WebService 所以,我要覆盖SaveChanges并用它执行添加/更新/删除操作。 我的问题是,当我像这样将模型定义到dbcontext类中时 public DbSet<ModelAdlar> Adlar { get; set; } 公共数据库集Adlar{get;set;} 但是,我不知道如何将从web服务获取的数据转换为DbSet。 Web服务发送列表为array ModelAdlar[],但它被定义为DbSet。如何管理该数据源或将阵列转换为

我正在尝试使用EF连接到WebService

所以,我要覆盖SaveChanges并用它执行添加/更新/删除操作。 我的问题是,当我像这样将模型定义到dbcontext类中时

public DbSet<ModelAdlar> Adlar { get; set; }
公共数据库集Adlar{get;set;} 但是,我不知道如何将从web服务获取的数据转换为DbSet。 Web服务发送列表为array ModelAdlar[],但它被定义为DbSet。如何管理该数据源或将阵列转换为dbset

我试过了

public DbSet<ModelAdlar> Adlar { get
{
    var sr = new KontrolService.UserServiceClient();
    return (DbSet<ModelAdlar>)sr.Veriler(Ortak.up[0], Ortak.up[1]);// error: this line says can't convert array to dbset.
}
set {

} }
public DbSet Adlar{get
{
var sr=new KontrolService.UserServiceClient();
return(DbSet)sr.Veriler(Ortak.up[0],Ortak.up[1]);//错误:此行表示无法将数组转换为DbSet。
}
设置{
} }

EF是用于连接数据库的ORM,而不是web服务。数据库集管理检索以及添加/删除、更改跟踪等。web服务的包装器应该只返回IEnumerable。如果您想通过Web服务更新来协调数据库更新(由EF控制),那么考虑将观察者连接到基于DB操作与Web服务进行通信的DbValk。(如果需要故障回滚,则将所有内容包装在事务中。)是的,我用于直接连接到DB。但是,现在我想更改,因为我不需要额外的带参数的sql命令,只需要列出、添加、删除和更新。我试图找到select命令执行的位置,也尝试继承DbSet类。但决不进入内部EF不是为此而设计的。您应该在VisualStudio中将服务引用添加到项目中,并以这种方式使用它。