关于ASP.NET里面OBJECTCONTEXT如何使用

问题描述

各位大侠好,我有项目,里面用了entiryframework,想法大概是这样,每个请求公用一个objectcontext,代码如下。publicstaticHKCG_MISEntitiesDBEntities{get{if(HttpContext.Current!=null&&HttpContext.Current.Items["DBEntities"]==null){HttpContext.Current.Items["DBEntities"]=newHKCG_MISEntities();}returnHttpContext.Current.Items["DBEntities"]asHKCG_MISEntities;}}项目已经完成快一年多,运行基本良好。但最近使用VS的Loadtest对项目做下负载测试,10个users以下基本还行,但超出10个后就出现很多EF报的错误,网上查了下说是EF线程不安全问题,说IIS采用的是线程池,线程都是共享的。所以没法保证一个请求的所有处理都在一个线程内完成。但具体机制还是很模糊。请问大家是1.在asp.net中是怎么用EF的,直接使用using吗?2.iis中的请求和线程池是怎么个关系?谢谢

解决方案

解决方案二:
应该随用随new,公共context是容易有争抢的问题。每一个请求就会被分配一个线程。
解决方案三:
请求处理结束的时候没有把dbcontextdispose掉如果用的MVC的话,应该在disposecontroller的时候做。
解决方案四:
贴出你ef报什么错误。

时间: 2024-09-20 06:02:49

关于ASP.NET里面OBJECTCONTEXT如何使用的相关文章

COM+事务和IIS

iis      Microsoft已经紧密地集成了IIS和COM+的功能,这使我们能非常容易地在事务性Web页面编程中利用事务处理应用程序.有许多不同方式集成COM+和IIS的事务特性,这些例子包括:    ? 事务性ASP.    ? ASP 中的ObjectContext.    ? 事务性事件.    开发者可以在使用IIS和COM+的应用程序中使用一个或多个这些特性.因为它们是紧密集成的,开发者只进行少量的工作,就能充分利用这些服务.事实上,在COM+ 中ObjectContext封装

ASP内置对象ObjectContext详解

object|对象|内置对象|详解     您可以使用 ObjectContext 对象提交或放弃一项由 Microsoft Transaction Server (MTS) 管理的事务,它由 ASP 页包含的脚本初始化.      ASP 包含 @TRANSACTION 指令时,该页会在事务中运行,直到事务成功或失败后才会终止.      语法   ObjectContext.method      方法   SetComplete SetComplete 方法声明脚本不了解事务未完成的原因.

asp内置对象 ObjectContext 详解

您可以使用 ObjectContext 对象提交或放弃一项由 Microsoft Transaction Server (MTS) 管理的事务,它由 ASP 页包含的脚本初始化. ASP 包含 @TRANSACTION 指令时,该页会在事务中运行,直到事务成功或失败后才会终止. 语法 ObjectContext.method 方法 SetComplete SetComplete 方法声明脚本不了解事务未完成的原因.如果事务中的所有组件都调用 SetComplete,事务将完成. SetAbort

asp内置对象 ObjectContext 事务管理 详解_应用技巧

asp内置对象 ObjectContext 详解 您可以使用 ObjectContext 对象提交或放弃一项由 Microsoft Transaction Server (MTS) 管理的事务,它由 ASP 页包含的脚本初始化.  ASP 包含 @TRANSACTION 指令时,该页会在事务中运行,直到事务成功或失败后才会终止.  语法 ObjectContext.method 方法 SetComplete SetComplete 方法声明脚本不了解事务未完成的原因.如果事务中的所有组件都调用 

asp内置对象 ObjectContext 事务管理 详解

asp内置对象 ObjectContext 详解 您可以使用 ObjectContext 对象提交或放弃一项由 Microsoft Transaction Server (MTS) 管理的事务,它由 ASP 页包含的脚本初始化. ASP 包含 @TRANSACTION 指令时,该页会在事务中运行,直到事务成功或失败后才会终止. 语法 ObjectContext.method 方法 SetComplete SetComplete 方法声明脚本不了解事务未完成的原因.如果事务中的所有组件都调用 Se

ASP内置对象详解之ObjectContext对象

object|对象|内置对象|详解 该对象用于控制Active Server Pages的事务处理.事务处理由Microsoft Transaction Server (MTS)管理. 事件 ObjectContext.OnTransactionAbort 由放弃的事务处理事件激发,在脚本完成处理后发生. ObjectContext.OnTransactionCommit 由成功的事务处理事件激发,在脚本完成处理后发生. 方法 ObjectContext.SetAbort 显式的放弃一次事务处理

学ASP动态网页必备:IIS 错误代码

iis|错误|动态|网页     400 无法解析此请求.     401.1 未经授权:访问由于凭据无效被拒绝.     401.2 未经授权: 访问由于服务器配置倾向使用替代身份验证方法而被拒绝.     401.3 未经授权:访问由于 ACL 对所请求资源的设置被拒绝.     401.4 未经授权:Web 服务器上安装的筛选器授权失败.     401.5 未经授权:ISAPI/CGI 应用程序授权失败.     401.7 未经授权:由于 Web 服务器上的 URL 授权策略而拒绝访问

ASP 应用程序开发原则指南

简介 "Active Server Page (ASP)"应用程序的成功常常取决于对体系结构和设计这两方面的取舍.考虑到 ASP 技术的范围之广和当前应用程序固有的复杂性,这种取舍是非常困难的.本文中,我将为您提供一些特定的指导方针,以助您成功开发基于 ASP 的应用程序. 我已将指导方针整理成一组开发原则.在评估解决方案和技术时,可以应用以下原则帮助您做出决策.以下原则是我长期以来从成功的开发模式所得的经验积累. 原则 1:采用标准方法 建立命名约定并使目录结构标准化,可以帮助您大大

ASP初学者参考!

参考|初学|初学 常见缩略词全写及中文含义 WWW----World Wide Web(万维网)URL----Uniform Resource Locator(统一资源定位符)HTTP----Hyper Text Transfer Protocol(超文本传输协议)HTML----Hyper Text Markup Language(超文本标记语言)XML----Extensible Markup Language(可扩展标记语言)ODBC----Open DataBase Connectivi