asp.net-mvc - 在其他项目的 mvc 中使用 partials
问题描述
是否可以将一些部分(* .cshtml)移动到核心类项目并在其他 mvc 项目中使用它们?
也许通过在 _ViewImports 中注入或使用某些东西?
解决方案
您可以将它们放在 Razor 类库中:
https://docs.microsoft.com/en-us/aspnet/core/razor-pages/ui-class
Razor 视图、页面、控制器、页面模型、Razor 组件、视图组件和数据模型可以构建到 Razor 类库 (RCL) 中。RCL 可以打包和重用。应用程序可以包含 RCL 并覆盖它包含的视图和页面。当在 Web 应用程序和 RCL 中都找到视图、局部视图或 Razor 页面时,Web 应用程序中的 Razor 标记(.cshtml 文件)优先。
创建包含 Razor UI 的类库
- 从 Visual Studio 中选择新建一个新项目。
- 选择 Razor 类库 > 下一步。
- 命名库(例如,“RazorClassLib”),> 创建。为避免文件名与生成的视图库发生冲突,请确保
库名不以 .Views 结尾。- 如果您需要支持视图,请选择支持页面和视图。默认情况下,仅支持 Razor 页面。选择创建。
Razor 类库 (RCL) 模板默认为 Razor 组件开发。支持页面和视图选项支持页面和视图。
推荐阅读
- tensorflow - 调整子目录中所有图像的大小
- python - NVME 通过 Tensorflow 读取神经网络训练数据的速度上限
- java - 如何在运行时识别和存储所有 Web 元素?
- azure - Azure Functions 高级计划允许的最大横向扩展实例
- python - 为什么numpy.linalg.eig不满足“矩阵点特征向量=特征值点特征向量”?
- c++ - 如何在给定问题中实现记忆
- angular - 升级到 EsLint:angular.json 出错(原理图:convert-tslint-to-eslint)
- firebase - 为什么我无法映射来自 FlutterFire 的 Cloud Firestore 的 snapshot.data?
- scala - 如何安装 Scala 2.12
- reactjs - 反转 API 调用中的数据顺序适用于 console.log