c# - 如何使用我的自定义方法扩展控制器类
问题描述
我想从扩展的控制器类中轻松获取我的方法,并向 Controller 类添加一些方法以在所有其他控制器中使用,如下所示:
扩大
public string GetString()
{
return "iamanexample";
}
身份验证控制器
public class AuthenticationController : Controller
{
public IActionResult Index()
{
string getMyStr = GetString();
return View();
}
}
我是否必须创建一个由 Controller 类继承的自定义类并在其中添加我的方法,然后使用我的自定义控制器类?或者有没有其他解决方案可以做到这一点?
解决方案
你可以去继承,也可以创建控制器的扩展方法,我更喜欢后一个版本。
要创建扩展方法,您可以创建一个静态类并在该类中创建一个静态方法。
public static class ControllerExtensions
{
public static string GetString(this Controller controller)
{
return "iamanexample";
}
}
然后,您可以通过任何控制器轻松访问它,通过编写,
string exampleString = this.GetString();
推荐阅读
- pandas - 有没有办法在读取 AnnData 对象后对其进行子集化?
- r - 1 中的错误 | country : 只能对数字、逻辑或复杂类型进行操作
- kotlin - 使用 Kotlin 进行改造 - 无法对数据进行建模
- python - 在第一次出现后插入标签
我有如下所示的 HTML:
<table class="table table-dark"><thead> </thead></table>`
<table>
HTML 页面上还有其他标签。我想要它,以便我可以<table>
在上述<table>
- html - 如何在 Plone5 中用 diazo Rules.xml 替换嵌套元素
- android - Android Studio 未按照 Spotify SDK 的说明显示文件 -> 新 -> 新模块选项
- python - 如何使用外键在 Django 中自动完成表单?
- python - 用于自动将文档归档到正确文件夹的机器学习方法
- python - 为什么 python selenium 有时发送键不输入我的键?
- php - 比较两个 php 文件并删除匹配行