在ASP.NETMVC中,我可以在哪里放置自定义类?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (62)

我有一些实用功能和分页功能。我想为这些函数分别创建名为Utility和Pagination的类,以便我可以在多个控制器中使用这些类函数。

那么我在哪里可以将这些课程放在我的文件夹结构中,然后如何访问?

提问于
用户回答回答于

你可以Helpers在根目录下创建一个新的文件夹,并在那里保存你的课程。我会保留我的类在一个不同的命名空间下调用Helpers

namespace MyProject.Helpers
{
  public class CustomerHelper
  {
        //Do your class stuff here
  }
}

为了在我的其他类(例如:控制器)中加入这个,我可以使用完全限定的名称

var custHelper=new MyProject.Helpers.CustomerHelper(); 

要么

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();    
  } 
}

如果你认为你的Helper方法也可以用于另一个项目,你可以考虑将它们保存在一个单独的项目中(类型类库)。要在项目中使用它,请添加对此项目的引用,并像上面所做的那样使用它(使用完全限定名称或使用import语句)

用户回答回答于

你可以把你的帮手类放在任何你认为合乎逻辑和方便的地方。

我个人Helpers从主项目文件夹创建一个文件夹。

可以在任何地方使用它们,或者通过完全限定类名或using声明。

在razor视图中,可以使用

@using MyProject.Helpers

在你使用的控制器或模型中

using MyProject.Helpers;

扫码关注云+社区