Es gibt viele Wege, dies zu erreichen. Hier ist, wie ich es in meinen Projekten mache.
Normalerweise habe ich einen anderen Projektnamen als den Anwendungsnamen, der Leerzeichen oder viel länger haben könnte. Also, ich behalte den Projektnamen und die Versionsnummer in appsettings.json
Datei.
appsettings.json
{
"AppSettings": {
"Application": {
"Name": "ASP.NET Core Active Directory Starter Kit",
"Version": "2017.07.1"
}
}
}
Startup.cs
Lasteinstellung von appsettings.json
Datei in AppSettings
POCO. Es wird dann automatisch im DI-Container als IOptions<AppSettings>
registriert.
public void ConfigureServices(IServiceCollection services)
{
services.AddOptions();
services.Configure<AppSettings>(Configuration.GetSection("AppSettings"));
}
AppSettings.cs
Hinweis: Ich habe einige andere Einstellungen, so dass ich sie alle zusammen in AppSettings POCO halten.
public class AppSettings
{
public Application Application { get; set; }
}
public class Application
{
public string Name { get; set; }
public string Version { get; set; }
}
Usage (_layout.cshtml)
Inject IOptions<AppSettings>
zu sehen. Sie können es auch in den Controller injizieren, wenn Sie möchten.
@inject IOptions<AppSettings> AppSettings
<footer class="main-footer">
@AppSettings.Value.Application.Version
@AppSettings.Value.Application.Name</strong>
</footer>
Anstatt es auf den Namen der Assembly zu binden, ich glaube, eine bessere Lösung einfach sein würde, den genauen Text, den Sie in der Layout-Datei setzen wollen. –
@NateBarbettini Der genaue Text, den ich haben möchte, ist der Name der Anwendung, der in den Projekteigenschaften ausgefüllt ist. – Serge