首页 > 分享 > DBContext 高性能实例创建

DBContext 高性能实例创建

最新推荐文章于 2023-04-28 10:14:29 发布

zq爱生活爱代码 于 2020-01-20 20:43:05 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

CodeFirstDBContext dbContext = null;
            if(HttpContext.Current.Items["CodeFirstDBContext"]==null)
            {
                dbContext= new CodeFirstDBContext();
                HttpContext.Current.Items["CodeFirstDBContext"] = dbContext;
            }else
            {
                dbContext = HttpContext.Current.Items["CodeFirstDBContext"] as CodeFirstDBContext;
            }

public class DbContextHelper

{

/// <summary>

/// 创建DBContext对象,并存放到HttpContext.Current.Items集合中。

/// </summary>

/// <returns></returns>

public static T CreateDbContext<T>(string key) where T : class, new()

{

T context = HttpContext.Current.Items[key] as T;

if (context == null)

{

context = new T();

HttpContext.Current.Items.Add(key, context);

}

return context;

}

/// <summary>

/// 释放DBContext对象

/// </summary>

public static void DisposeDbContext(string key) where T : class, new()

{

if (HttpContext.Current.Items.Contains(key))

{

T context = HttpContext.Current.Items[key] as T;

context.Dispose();

HttpContext.Current.Items.Remove(key);

}

}

}

请求结束及时释放:在HttpContext管道事件中最后一个发生。

void Application_EndRequest(object sender, EventArgs e)

{

DbContextHelper.DisposeDbContext("contextKey");

}

相关知识

教程:对鸢尾花进行分类
高性能、低污染、广应用 建筑材料向“绿”转身
法国园林实例
PHP专业项目实例开发
住宅绿化景观设计实例
Sylius:如何扩展Taxon模型?
学术讲座— 高性能氮化硅陶瓷产业化技术和应用发展现状
揭秘高性能电动剪刀:花卉绿植必备工具的最佳选择
使用按内容相等行为创建对象表达式
Python类的实例化应用实现输入打印

网址: DBContext 高性能实例创建 https://m.huajiangbk.com/newsview793670.html

所属分类:花卉
上一篇: 算错的请换可达鸭头像一天的答案是
下一篇: 七夕将至,遇见最美七夕诗词