c# - 注入 IOptions 的最佳方法是什么在_布局中
问题描述
我使用 ASP.NET Core Razor Pages 构建了一个小型 Web 应用程序,但我想使用IOptions<T>
从app.json
. _Layout
谢谢!
解决方案
您可以使用@inject
Razor 指令将服务注入您的 Razor 视图。当然,这也包括选项。因此,如果您MyOptions
已经配置了一些类(例如services.Configure<MyOptions>(options => { … })
,在 Startup 类中使用),那么您可以将选项注入.cshtml
:
@inject IOptions<MyOptions> myOptions
<h1>@myOptions.Value.ApplicationTitle</h1>
<p>@myOptions.Value.ApplicationIntroText</p>
为了避免一直myOptions.Value
显式访问,您还可以使用代码块并将结果首先存储在局部变量中:
@inject IOptions<MyOptions> myOptions
@{
var opts = myOptions.Value;
}
<h1>@opts.ApplicationTitle</h1>
<p>@opts.ApplicationIntroText</p>
推荐阅读
- webpack - 如何删除 webpack 模块规则预编译?
- python - 将 Dask Dataframe 导入 Bigquery 表?
- javascript - fetch src value from the string
- python - 如何为折线图上的数据点添加标签?
- tomcat - 在 Pentaho CDE 上配置“sql over sqlJndi”
- laravel - Laravel - 当存在依赖字段时如何防止行被删除
- angular - 将 gRPC 与 Electron 14 一起使用
- powershell - 未找到可用版本的 libssl 已中止(核心转储)(ubuntu 21.04 上的 Powershell)
- mysql - 如何在sql中按其他列中的值过滤列中的值
- java - selenium + java - 如何下载pdf并以不同的名称保存?