问题标签 [httpapplication]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 对 HttpApplication 进行单元测试
我有一个派生自 HttpApplication 的类,它添加了一些额外的功能。我已经到了需要对这些功能进行单元测试的地步,这意味着我必须能够创建 HttpApplication 的新实例、伪造请求并检索响应对象。
我该如何对 HttpApplication 对象进行单元测试?我目前正在使用 Moq,但我不知道如何设置所需的模拟对象。
c# - Global.asax 问题
我正在开发一个 HttpModule 并使用 Global.asax。我开发了一个派生自 HttpApplication 的类,但我的类的 Application_Start 方法从不执行(我在 Application_Start 的开头创建了一个文件,但该文件从不创建,这就是我认为 Application_Start 从不执行的原因)。我正在使用 VSTS2008 + C# + .Net 3.5。
任何想法有什么问题以及如何调试?我想确认我应该将 Global.asax 复制到我的网站虚拟目录的根目录中,对吗?我应该在 web.config 中配置任何内容以让 HttpModule 运行吗?
c# - C# ASP.NET HttpModules:HttpApplication 事件
我的 Web 应用程序中有一个 HttpApplication (Global.asax),我使用它来捕获和记录未处理的异常并设置 WebFormURLRouting。这一切都有效,但是我想将此代码移动到我的应用程序框架中(即不在 Global.asax.cs 中)
我刚刚尝试在框架中创建一个 HttpApplication 类,但似乎我无法覆盖事件?无论如何,我相信我可以使用 HttpModule 来使用这些事件,这样做:
1) 完全消除对 Global.asax 的需求?
2)这种影响如何扩大,即最终在网络农场上运行应用程序
3) 我有 HttpHandlers 来处理文件上传和文件下载等其他事情,是否应该使用多少个 HttpModule/HttpHandlers 或者应该以某种方式组合这些以减少开销?
任何意见表示赞赏
asp.net - IIS6 中 ASP.NET 中静态 *.JS 文件的 Application_BeginRequest?
我正在尝试做一些看似简单的事情:确保为发送到我的 IIS6 网站的每个静态 *.JS URL 调用 Application_BeginRequest,无论底层文件是否存在。
什么是在 IIS6 和 ASP.NET 3.5 上执行此操作的好方法,理想情况下不会导致所有静态文件通过 ASP.NET——只有 .JS URL?
如果您对原因感到好奇,我正在使用一个现有的应用程序,该应用程序使用 Application_BeginRequest 进行自定义重定向和路径重写。以这种方式实现它并不是我的第一选择,但考虑到那里有什么,我也想将它扩展到涵盖 .JS,而不是包含另一种不同的重定向/重写方法(例如 IIS 重定向配置、重写模块等.) 这可能会使应用程序的部署和测试变得复杂,尤其是在 IIS6 上。
我知道这里的 IIS7 故事要好得多(尤其是围绕配置、模块等的 XCOPY 部署),但我现在无法升级这个应用程序。
asp.net - 如何在 ASP.NET-MVC 中显示自定义 404 页面?
当我网站上的任何 URL 为 404 时,我想显示一个使用 ASP.NET-MVC 呈现的自定义 404 页面。但是我不想使用通配符路由方法,因为这会禁用标准网络表单。我的代码目前如下所示:
此代码在 App_Error 中
//1 确实有效。Test.aspx 是一个标准的网络表单
//2 不起作用,因为它是一个 asp.net-mvc 路由
如何使 MVC 路由工作?
asp.net - 如何为 ASP.Net 创建准系统 HttpApplication(没有 Webforms 或 MVC)
好的,我想了解更多关于 ASP.Net 如何在后台工作的信息。我的意思是在 MVC 或 Webforms 和其他此类框架之下。
基本上我想知道这些框架是如何连接到 ASP.Net 上的,以便它们与 IIS 一起工作。创建一个与 IIS 一起工作且既不使用 MVC 也不使用 Webforms 的简单 HttpApplication 的最低要求是什么?Web.config 中的最低要求是什么?Global.asax 中会添加什么?
asp.net - Application_Start 与 OnInit 与构造函数
自从我几年前开始编写经典的 ASP 12 (左右)以来,我一直在考虑这个问题,但我从来没有找到一个很好的解决方案,因为 ASP 和 ASP.NET 的体系结构一直是一个糟糕的实践,魔法共享单身人士等。我最大的问题是HttpApplication
对象及其非事件事件(Application_Start
,Application_End
等)。
如果您想在 HTTP 应用程序的整个生命周期内只做一次事情,Application_Start
那么显然是这样做的地方。对?不完全是。首先,这本身不是一个事件,它是一个神奇的命名约定,当遵循它时,会导致每个由 IIS 创建的 AppDomain 调用一次该方法。
除了魔术命名约定是一种可怕的做法之外,我开始认为这可能是对象上不存在Start
事件这样的事情的原因HttpApplication
。因此,我尝试了确实存在的事件,例如Init
. 好吧,这也不是一个真正的事件,它是一个可覆盖的方法,这是次优的。
似乎Init()
每次实例化对象都会调用该方法,HttpApplication
每个 AppDomain 不止一次发生这种情况。这意味着我不妨把我的启动逻辑放在HttpApplication
对象的构造函数中。
现在我的问题是,为什么我不应该将我的启动逻辑放在构造函数中?为什么甚至Init()
存在,我需要关心Application_Start
吗?如果我这样做了,谁能解释为什么HttpApplication
对象中的这个伪事件没有适当的事件或可覆盖的方法?
任何人都可以向我解释为什么在一个典型的 ASP.NET 应用程序中,创建了 8 个 my 实例HttpApplication
(当然,这会导致构造函数和Init
运行多次;这可以通过锁定和一个名为 的共享静态布尔值来缓解initialized
)当我的应用程序只有一个 AppDomain 时?
.net - 引用 MSDN 关于 System.Web.HttpApplication
引自http://msdn.microsoft.com/en-us/library/4wt3wttw.aspx:
HttpApplication 类的一个实例用于在其生命周期中处理许多请求。但是,它一次只能处理一个请求。因此,成员变量可用于存储每个请求的数据。
为什么要按请求?也许每组请求?似乎成员变量可用于在 HttpApplication 的整个生命周期中存储数据。因此,在第二个(对于此 HttpApplication)请求开始时 HttpApplication 的状态等于在第一个(对于此 HttpApplication)请求结束时的状态。
为什么要按请求?
asp.net - 更改响应源的最佳 HttpApplication 事件
我打算构建一个HttpModule
以扫描响应的来源并进行小的调整,主要是更改 url(href
s、action
s、src
s 等)。
我看到HttpApplication
有大量可以处理的事件,我不确定在哪个阶段可以安全地更改返回到浏览器的 HTML 内容。
我需要在 a 中执行此操作,HttpModule
因为这是一个应用程序范围的处理,使我不必在每个页面中编写相同的代码。
asp.net-mvc-2 - Application_BeginRequest() 之前的 ASP.NET 间歇性滞后
我正在使用 ASP.NET MVC 2。在调试模式下,在 Global.asax 中命中 HttpApplication_BeginRequest() 之前,对服务器的每个其他请求都有一个非常一致的 5-10 秒延迟
每隔一个请求就会发生这种情况。在发布模式下它总是很快,但它导致我在调试模式下测试东西时出现问题。我查看了调用堆栈,但 HttpApplication_BeginRequest() 之前的唯一内容是“外部代码”,所以我不知道发生了什么。我怎样才能找出是什么在管道中引入了这种滞后?谢谢。