我正在尝试设置将提供版本号的接口方法:
var versionNumber = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
我不确定如何在接口中实现它,以便继承类可以获取版本号?
答案 0 :(得分:1)
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',即使该实现是程序集的私有。