C# 泛型扩展-服务不实现接口成员
有人能帮我找出哪里出了问题吗 我正在尝试为.NETCore中的服务实现一个通用扩展方法 这是我的界面-C# 泛型扩展-服务不实现接口成员,c#,.net-core,entity-framework-core,C#,.net Core,Entity Framework Core,有人能帮我找出哪里出了问题吗 我正在尝试为.NETCore中的服务实现一个通用扩展方法 这是我的界面- public interface IContactService : IAddable<Contact> { Task<List<Contact>> GetAll(); } 以及模型的接口- public interface IBaseEntity { } 然后我有我的泛型扩展- public interface IAddable<T>
public interface IContactService : IAddable<Contact>
{
Task<List<Contact>> GetAll();
}
以及模型的接口-
public interface IBaseEntity { }
然后我有我的泛型扩展-
public interface IAddable<T>
{
AppContext Context { get; }
}
public static class IAddableExentions
{
public static async Task<T> Add<T>(this IAddable<T> addable, T entity) where T : class, IBaseEntity
{
await addable.Context.Set<T>().AddAsync(entity);
await addable.Context.SaveChangesAsync();
return entity;
}
}
我的服务-
public class ContactService : IContactService
{
public AppContext Context;
public ContactService(AppContext context)
{
Context = context;
}
public async Task<List<Contact>> GetAll()
{
var contacts = await Context
.Contacts
.ToListAsync();
return contacts;
}
}
现在编译器正在抱怨-
“ContactService”未实现接口成员
'IAddable.Context'
当我试着打电话给服务部时,我得到了一个联系方式-
IContactService不包含添加和否的定义
接受类型为的第一个参数的可访问扩展方法
找不到IContactService
我已经在另一个项目中使用了它,但就我个人而言,我不明白它为什么不在这里使用…您将上下文声明为ContactService的一个领域
public class ContactService : IContactService
{
public AppContext Context;
public ContactService(AppContext context)
{
Context = context;
}
public async Task<List<Contact>> GetAll()
{
var contacts = await Context
.Contacts
.ToListAsync();
return contacts;
}
}
public class ContactService : IContactService
{
public AppContext Context; //<-- field
//...
public interface IAddable<T>
{
AppContext Context { get; }
}
public class ContactService : IContactService
{
public AppContext Context { get; }
//...