加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c#从基本apicontroller派生 – 在基类中,Request对象为null

发布时间:2020-12-15 08:47:37 所属栏目:百科 来源:网络整理
导读:我有一些具有类似行为的api控制器.我已经创建了一个公共基类,它本身就是一个api控制器.在我的派生类中,我有一些假设应该在基本api控制器中解决(例如一些常见的头值).但我的问题是在基础ApiController中“请求”对象为空! 为什么这样,我该如何解决? (在构造
我有一些具有类似行为的api控制器.我已经创建了一个公共基类,它本身就是一个api控制器.在我的派生类中,我有一些假设应该在基本api控制器中解决(例如一些常见的头值).但我的问题是在基础ApiController中“请求”对象为空!

为什么这样,我该如何解决? (在构造派生类时非常重要,因为我根据标题值分配值)

代码示例

BaseClass : ApiController
{
public BaseClass()
{
  _header1 =  Request.Headers.GetValues("header1");
}
}

DerivedClass : BaseClass
{
// getting error here because the base class isn't constructed because the Request object is null! and errors are thrown
}

解决方法

这与继承无关,它与ApiController尚未初始化的事实有关,并且您正在尝试从构造函数访问Request对象.

如果你需要在控制器中初始化某些东西,你应该覆盖Initialize方法并在那里进行(记得调用基础!).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读