我正在尝试设置将提供版本号的接口方法:
var versionNumber = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
我不知道如何在接口中实现这个,以便继承类可以获取版本号?
public interface IVersionProvider
{
string GetVersion();
}
执行:
internal class /*or struct*/ VersionProvider : IVersionProvider
{
public string GetVersion()
{
System.Reflection.Assembly.GetExecutingAssembly()
.GetName().Version.ToString();
}
}
我将课程设为内部,因为它不需要在外部创建:
public class Factory
{
IVersionProvider GetVersionProvider() { return new VersionProvider(); }
}
由于接口是公共的,即使实现是程序集私有的,外部用户也可以在其上调用“GetVersion”。