gpt4 book ai didi

c# - 未针对 REST 调用触发 PreRequestHandlerExecute 事件

转载 作者:太空狗 更新时间:2023-10-30 00:47:17 26 4
gpt4 key购买 nike

我正在 HttpApplication 类的 PreRequestHandlerExecute 事件处理程序中创建我的 nhibernate session 。

它适用于 MVC,但是,当在 WCF (REST) 中时,事件永远不会被触发。

有没有办法让它发生或有任何其他更好的想法在 MVC 和 WCF/Rest 中设置 session ?

提前致谢

安德烈·卡鲁奇

最佳答案

我明白了!

我在这篇文章中找到了答案:

http://blogs.msdn.com/wenlong/archive/2006/01/23/516041.aspx

在混合模式下使用 WCF 时,模块会在管道的早期拦截请求:BeginRequest。这意味着永远不会调用其他事件

为了解决这个问题,我更改了我的 web.config 以使 WCF 在 Asp.Net 兼容模式下工作:

<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
</system.serviceModel>

然后明确告诉我的服务也兼容:

[AspNetCompatibilityRequirements(RequirementsMode = 
AspNetCompatibilityRequirementsMode.Allowed)]
public class MyService : IMyService { ...

完成了!现在我有了所有事件,还有 HttpContext.Current 而不是 OperationContext.Current

我希望这能帮助遇到同样问题的人。

干杯,

安德烈·卡鲁奇

关于c# - 未针对 REST 调用触发 PreRequestHandlerExecute 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1138192/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com