问题标签 [httpcontext]

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.

0 投票
1 回答
1744 浏览

c# - 为什么使用 GZipStream 压缩 HTTP 响应时 CSS 文件不加载?

我正在使用 asp.net 2.0 (C#) 开发一个应用程序,我正在尝试实现我的文件的压缩,以便我的网站的性能得到改善。

为此,我在 Global.asax 文件中添加了一个代码来压缩所有请求(.aspx、.js、.css)但是当我运行我的应用程序时,它第一次运行良好,然后 CSS 没有加载并且网页是没有正确渲染。

为什么会这样??

已编辑(添加了我的压缩代码)

我的 Global.asax 文件的压缩代码如下:

另外请让我知道是否有其他更好的方法来做同样的事情,使用 Global.asax 文件,因为我没有 IIS 设置的访问权限,也没有实现 HttpModule 的权限,这就是为什么我正在使用 Global.asax 文件。

谢谢

0 投票
2 回答
7349 浏览

asp.net - 以编程方式刷新/更新 HttpContext.User

我将 FormsAuthentication 用于 ASP.NET 站点,该站点具有显示当前登录用户 Page.User.Identity.Name 的母版页。

他们可以在他们的设置中更改他们的用户名,当这样做时,我会为他们更新他们的 cookie,这样他们就不必通过回发退出/重新登录。

我可能很挑剔,但是在他们更改用户名后,母版页仍会显示其原始用户名,直到他们重新加载或加载不同的页面。

有没有办法以编程方式更新当前的 Page.User,以便在同一个回发期间显示他们的新用户名?

0 投票
3 回答
20134 浏览

asp.net - 带会话的 NHibernate 线程安全

我已经使用 NHibernate 一段时间了,并且不时发现如果我尝试同时请求两个页面(或尽可能接近),它偶尔会出错。所以我认为这是因为我的会话管理不是线程安全的。

我以为这是我的课,所以我尝试使用与这篇博文不同的方法http://pwigle.wordpress.com/2008/11/21/nhibernate-session-handling-in-aspnet-the-easy-way/但是我仍然遇到同样的问题。我得到的实际错误是:

要么打开要么没有打开数据读取器,但这是罪魁祸首。

我把我的会话管理课程放在下面,有人能发现我为什么会遇到这些问题吗?

我正在使用的实际商店是这样的:

我在 Application_Start 上初始化 SessionFactory:

更新

谢谢你的建议。我尝试了一些不同的方法来尝试简化代码,但我仍然遇到相同的问题,我可能知道原因。

我在需要时为每个请求创建会话,但在我的 global.asax 中,我正在处理 Application_EndRequest 上的会话。但是,当我在加载页面结束时进行调试时,我发现 Application_EndRequest 被多次触发。我认为该事件只假设在请求结束时触发一次,但如果不是,并且其他一些项目正在尝试使用 Session (这是错误所抱怨的),无论出于什么奇怪的原因可能是我的问题,会话仍然是线程安全的,它只是被提前处理掉了。

有人有什么想法吗?我做了一个谷歌,看到 VS 开发服务器确实会导致这样的问题,但我是通过 IIS 运行它。

0 投票
2 回答
5007 浏览

query-string - 将查询字符串添加到 asp:button 的 postbackurl 属性

我在 default.aspx 的表单上有一个文本框和一个按钮,在我的 DownloadHandler.ashx 中,我从 HttpContext.Request.Form("txtURI") 获得了我需要的值:

我想更改它,以便将输入文本框中的值作为查询字符串传递给 DownloadHandler.ashx(而不是从 Request.Form 中选择它)。

实现这一目标的最佳方法是什么?

0 投票
2 回答
945 浏览

asp.net - 在没有 HttpContext 的情况下在 asp.net 中获取 ApplicationState

我有一个 webapp,它在 ApplicationState 中存储了一个配置对象。此对象包含与数据库的连接字符串以及其他内容。

有时我会启动一个异步线程来执行一些运行时间较长的任务,例如发送电子邮件和更新数据库。

但是,由于该线程没有 HttpContext 我无法获取配置对象。

我知道这种一切都依赖于 HttpContext 的设计很糟糕,但现在改变已经太迟了。查看反射器,我看到 HttpContext 类仅使用静态内部类来获取 ApplicationState。有没有其他方法可以得到它?

.net 中的所有这些内部类真的很烦人。

0 投票
7 回答
6400 浏览

c# - 在 C# 和 ASP.NET 中进行跟踪对性能有何影响?

我在最近查看的一些生产登录代码中发现了这一点......

...where query 是一个简短的 SQL 查询,用于获取匹配的用户。这对性能有任何影响吗?我认为它非常小。

此外,使用 HTTP 上下文的这种确切类型的跟踪的目的是什么?这些数据追踪到哪里?提前致谢!

0 投票
4 回答
7182 浏览

asp.net - 我可以欺骗 HttpRequest.Current.Request.IsLocal 吗?

我正在运行一个 Web 应用程序,如果它在本地运行,它会显示一些调试行为 - 引用资源字符串等 - 我想在我无法访问互联网的会议上在我的笔记本电脑上演示该应用程序,所以它必须是本地的。

该应用程序使用 HttpContext.Current.Request.IsLocal 来确定它是否在本地运行 - 有什么办法可以欺骗它吗?即使我确实在本地运行,我也想欺骗它返回“False”。

我确实可以访问源代码(并意识到我可以演示一个“IsLocal”检查被注释掉的构建),但不想为这个演示制作一个特殊的构建。如果需要,我会这样做,但我宁愿使用现有的代码库。

0 投票
6 回答
75796 浏览

c# - Request.Url.Host 和 ApplicationPath 一次调用

有什么方法可以HttpContext.Current.Request.Url.Host一键HttpContext.Current.Request.ApplicationPath通话吗?

像“完整的应用程序网址”之类的东西?

编辑:澄清-我需要的是[]中的部分:

我只是出于好奇而问。

编辑 2:感谢所有回复,但没有一个是我正在寻找的。仅供参考,我以这种方式解决了问题(但我仍然想知道是否有更顺畅的方式):

0 投票
3 回答
747 浏览

asp.net - ASP.Net Context.User.Identity 怪异

我有一个使用表单身份验证的 ASP.Net 3.0 SP1 应用程序。

在测试时,我注意到如果我查看了另一个用户正在查看的页面,其他用户的名称将显示在我的母版页上的控件中。Context.User.Identity 也适用于其他用户。

如果我切换到没有其他人正在查看的其他页面,则 Context.User.Identity 是正确的。

我很难过,并会很感激建议。
提前致谢。
克里斯

0 投票
5 回答
2193 浏览

c# - HttpContext 的服务器端等价物?

我有一个当前使用当前 HttpContext 来存储 LINQ 数据上下文的 Web 应用程序。根据Rick Strahl 的博客,基于每个用户的当前请求的上下文是持久的:

但是,我有一些从 global.asax 文件执行的脚本,它们没有HttpContext。 HttpContext.Current 是 NULL,因为服务器是发出“请求”的服务器。

是否有可用于存储数据上下文的等效对象?所以我不必担心重新创建它和附加/分离对象?我只想在我的流程的整个生命周期中保留上下文。

更新:

我目前正在尝试在我的 DAL 助手类中使用静态变量。在第一次调用类中的一个方法时,DataContext 被实例化,并存储在静态变量中。在我的过程结束时,我调用另一个在 DataContext 上调用 Dispose 的方法,并将静态变量设置为 NULL。