首页新闻找找看学习计划

关于HttpRequestBase的属性RequestContext的问题

0
[已解决问题] 解决于 2018-11-14 13:44

HttpRequestBase的一个属性RequestContext,如下代码:

//
// 摘要:
// 在派生类中重写时,获取当前请求的 System.Web.Routing.RequestContext 实例。
//
// 返回结果:
// 当前请求的 System.Web.Routing.RequestContext 实例。对于非路由请求,返回的 System.Web.Routing.RequestContext
// 对象为空。
//
// 异常:
// System.NotImplementedException:
// 始终为 。
public virtual RequestContext RequestContext { get; internal set; }

 

其中set为internal,无法进行赋值。

在一个学习资料里看到:

创建HttpContextBase的对象为context,然后有一句代码:

RequestContext requestContext = new RequestContext(context, routeData);

context.Request.RequestContext = requestContext;

就这样给HttpRequestBase的属性RequestContext的对象进行了赋值。但是这么写的时候,报错:由于 set 访问器不可访问,因此不能在此上下文中使用属性或索引器“System.Web.HttpRequestBase.RequestContext”。

这样是什么原因呢?为什么他写的可以,我用的时候不一样呢?

1sa2sa的主页 1sa2sa | 菜鸟二级 | 园豆:288
提问于:2018-08-10 11:35
< >
分享
最佳答案
0

只有程序集内可以访问,所以你没权限赋值

奖励园豆:5
灬丶 | 初学一级 |园豆:6 | 2018-08-13 14:24

我是按照别人的代码在进行练习,但是他的代码就是直接这么赋值的啊?是不是我有可能哪里搞错了?

1sa2sa | 园豆:288 (菜鸟二级) | 2018-08-13 14:26

@1sa2sa: 你看下他的set访问器被加了修饰符,你查下这个修饰符干嘛的

灬丶 | 园豆:6 (初学一级) | 2018-08-13 14:27

@灬丶: 我看过了,这是元数据。

1sa2sa | 园豆:288 (菜鸟二级) | 2018-08-13 14:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册