DNX核心应用版本信息
DNX core application version information
在早期的基于 .NET 的应用程序中,我实现了一个用于返回应用程序信息的中央方法,通常是产品名称、版本和合法版权。此方法是通过 System.Reflection.Assembly 实现的,或者在较新的应用程序中是通过 System.Diagnostics.FileVersionInfo 实现的。这让我可以将版本号放在一个中心位置,即主程序集文件,并在 Visual Studio 项目属性中轻松编辑它。
现在在 DNX 核心中,所有这些似乎都不可用,System.Reflection 和 System.Diagnostics。
您建议如何以平台中立的方式在基于 DNX 核心的 ASP.NET 5 应用程序中管理版本信息?
project.json 文件具有版本号、名称、描述、版权、作者等。这些与用于构建 NuGet 程序包的属性相同。事实上,如果您创建一个 'Class Library (Package)' 项目,您可以通过检查项目属性中的选项将其直接编译为 NuGet .nupkg 文件。
我相信您可以使用 Configuration.GetConfigurationSection
阅读此文件。 ApplicationSettings
只是一个 class,具有您要阅读的 project.json 中的属性。
var configurationSection = configuration.GetConfigurationSection(nameof(ApplicationSettings));
var applicationSettings = ConfigurationBinder.Bind<ApplicationSettings>(configurationSection);
您可以实现类似于 dnx 的 IRuntimeEnvironment
:
- IRuntimeEnvironment
- RuntimeEnvironment(执行
IRuntimeEnvironment
)
Now in DNX core all this doesn't seem to be available, neither System.Reflection nor System.Diagnostics.
不确定你的意思。 System.Reflection
和 System.Diagnostics
可用:https://github.com/aspnet/dnx/blob/219871c6063d00f8297eeafe93266f1048f59a45/src/Microsoft.Dnx.Host/project.json#L21-L23
如果找不到特定类型,请使用 PackageSearch 网站查看它在哪个 NuGet 包中
在早期的基于 .NET 的应用程序中,我实现了一个用于返回应用程序信息的中央方法,通常是产品名称、版本和合法版权。此方法是通过 System.Reflection.Assembly 实现的,或者在较新的应用程序中是通过 System.Diagnostics.FileVersionInfo 实现的。这让我可以将版本号放在一个中心位置,即主程序集文件,并在 Visual Studio 项目属性中轻松编辑它。
现在在 DNX 核心中,所有这些似乎都不可用,System.Reflection 和 System.Diagnostics。
您建议如何以平台中立的方式在基于 DNX 核心的 ASP.NET 5 应用程序中管理版本信息?
project.json 文件具有版本号、名称、描述、版权、作者等。这些与用于构建 NuGet 程序包的属性相同。事实上,如果您创建一个 'Class Library (Package)' 项目,您可以通过检查项目属性中的选项将其直接编译为 NuGet .nupkg 文件。
我相信您可以使用 Configuration.GetConfigurationSection
阅读此文件。 ApplicationSettings
只是一个 class,具有您要阅读的 project.json 中的属性。
var configurationSection = configuration.GetConfigurationSection(nameof(ApplicationSettings));
var applicationSettings = ConfigurationBinder.Bind<ApplicationSettings>(configurationSection);
您可以实现类似于 dnx 的 IRuntimeEnvironment
:
- IRuntimeEnvironment
- RuntimeEnvironment(执行
IRuntimeEnvironment
)
Now in DNX core all this doesn't seem to be available, neither System.Reflection nor System.Diagnostics.
不确定你的意思。 System.Reflection
和 System.Diagnostics
可用:https://github.com/aspnet/dnx/blob/219871c6063d00f8297eeafe93266f1048f59a45/src/Microsoft.Dnx.Host/project.json#L21-L23
如果找不到特定类型,请使用 PackageSearch 网站查看它在哪个 NuGet 包中