一个方法可以实现多个接口方法吗?

时间:2015-05-15 14:43:59

标签: c# interface

这是接口方法的两种实现,正如您所看到的,它们在这种情况下执行相同的操作

public override IList<IDatastoreRequestParameter> GetReadByOwnerIdParameters(int id) {
    return new List<IDatastoreRequestParameter> {
        new DatastoreRequestParameter("@CustomerId", id)
    };
}

public override IList<IDatastoreRequestParameter> GetDeleteByOwnerIdParameters(int id) {
    return new List<IDatastoreRequestParameter> {
        new DatastoreRequestParameter("@CustomerId", id)
    };
}

但是,由于我们在任何地方使用此接口,有时它们是相同的,但它们也可以在实现中返回不同的参数。我知道我可以创建一个私有方法来返回相同的东西,我只是好奇,看看它是否可能。我的直觉告诉我不,但是比我的直觉更聪明,所以我在这里。

1 个答案:

答案 0 :(得分:4)

在调用两种不同的方法时,不能创建一个方法并告诉编译器/平台使用它。正如您所说,您可以创建一个处理案例并调用它的私有方法,但您必须单独在接口中实现这些方法。