我有一些实用功能和分页功能.我想分别为这些函数创建名为Utility和Pagination的类,这样我就可以在多个控制器中使用这些类函数.
那么我在哪里可以将这些类放在我的文件夹结构中,如何才能访问呢?
Shy*_*yju 81
您可以创建一个Helpers在根目录下调用的新文件夹,并将您的类保存在那里.我会将我的类保存在一个名为的不同命名空间下Helpers
namespace MyProject.Helpers
{
public class CustomerHelper
{
//Do your class stuff here
}
}
Run Code Online (Sandbox Code Playgroud)
要在我的其他类(Ex:Controllers)中加入,我可以使用完全限定名
var custHelper=new MyProject.Helpers.CustomerHelper();
Run Code Online (Sandbox Code Playgroud)
要么
Import在顶部添加一个语句,以便我可以跳过完全限定的名称
//Other existing Import statements here
using MyProject.Helpers;
public class RackController : Controller
{
public ActionResult Index()
{
var custHelper=new CustomerHelper();
//do something with this
return View();
}
}
Run Code Online (Sandbox Code Playgroud)
如果您认为您的Helper方法也可以在另一个项目中使用,您可以考虑将它们物理地保存在单独的项目中(类型类库).要在项目中使用它,请添加对此项目的引用,并像上面所做的那样使用它(使用完全限定名称或使用import语句)
Eri*_* J. 11
您可以将助手类放在合乎逻辑且方便的任何位置.
我个人Helpers从主项目文件夹创建一个文件夹.
您可以在任何地方使用它们,方法是完全限定类名或使用using语句.
在Razor视图中,您将使用
@using MyProject.Helpers
Run Code Online (Sandbox Code Playgroud)
在您将使用的控制器或模型中
using MyProject.Helpers;
Run Code Online (Sandbox Code Playgroud)
另一种方法可能是创建一个基本控制器类并在那里添加您的通用逻辑,并从您的基本控制器派生您的控制器.
public class MyBaseController:Controller
{
public void CommonFunction()
{
}
}
Run Code Online (Sandbox Code Playgroud)
使用像......
public HomeController:MyBaseController
{
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
54027 次 |
| 最近记录: |