如何将HttpContext对象从控制器传递到MVC中的存储库类

问题描述 投票:2回答:1

我有一个带有构造函数的存储库类,该构造函数接受HttpContext对象作为其参数。如何将HttpContext对象从控制器传递到MVC项目中的此存储库类?

asp.net-mvc httpcontext
1个回答
1
投票

如果要在控制器操作中获取当前的HttpContext,可以执行以下操作:

public ActionResult Action(...) {
    var repository = new MyRepository(this.HttpContext) ;
    ...
}

尽管我必须添加,但这听起来像是有问题的设计。我想不出任何原因,为什么存储库类将直接需要上下文。如果我需要上下文中的数据进入模型,则可以创建一个值对象(也称为数据传输对象),根据需要序列化HttpContext并将其传递到存储库中。

© www.soinside.com 2019 - 2024. All rights reserved.