我正在使用 Razor 网页(所以不是 MVC)。我有一个在我的 Web 应用程序中使用的 Razor 布局页面。
我有一个代码执行顺序问题。通常,您在子页面上设置 Page.Title(例如),然后在布局页面运行时填充此变量,以便您可以将标题放在布局中的页面上。没关系。但我需要倒着做。我想在子页面上的代码执行之前为所有页面运行一些代码。
我希望能够运行一段代码,而不必在每个子页面中都引用它,并且我需要在子页面运行任何代码之前执行它。我确信有一种非常简单明了的方法可以做到这一点,因为我是 Razor Web Pages 生命周期的新手,所以我错过了...
示例: 我在布局页面中设置我的网站名称。但出于某种原因,我想在我的子页面、子子页面等的很多地方显示站点名称。我最好怎么做?
我知道 _PageStart.cshtml,我可以使用它在逐个文件夹的基础上先运行代码,设置页面。我可能需要的任何变量等,这适用于我的目的。但我很难理解这是正常过程,还是一种糟糕的方法。网络上似乎没有太多关于 Razor 网页的这方面内容。
最佳答案
Web 用户控件就是您想要的。
关于c# - Razor (Web Pages) 布局页面先于 RenderBody 执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10417191/