无法在VS2010中使用重构为我的类创建接口

本文关键字:我的 创建 接口 重构 VS2010 | 更新日期: 2023-09-27 18:17:36

我有以下类,我正试图为此创建一个接口。然而,当我尝试在VS2010中重构时。我得到的信息是:不能提取接口。该类型不包含任何可能包含的成员提取到一个接口。

这是否与我将类和/或方法定义为静态有关?我是否需要能够在不创建实例的情况下获得这些数据这就是为什么我把它设置成静态的

public static class DataSourceService
{
    public static IEnumerable<DataSource> GetDataSources()
    {
        return new[]
            {
                new DataSource { Value = "0001", Text = "Development"  },
                new DataSource { Value = "0002", Text = "Production" }
            };
    }

}

无法在VS2010中使用重构为我的类创建接口

您不能拥有带有接口的静态类,这就是重构工具无法提取接口的原因。为了提取接口,您需要将其转换为具有实例成员的实例类。

您没有任何可以提取的方法。static方法不能属于接口。

谷歌static interface method,你会得到一些有趣的文章,如http://discuss.joelonsoftware.com/default.asp?dotnet.12.305680.12