方法1:

  新建好项目之后 → 右击类库 → 新建项 → ADO.NET实体数据模型(在Visual C#项中) → 从数据库生成 → 选择你要映射的数据库的数据源(将 『是,在连接字符串中包含敏感数据』勾上) → 选中要映射的表、视图、存储过程。

下面是使用!

//保证一次请求共用一个上下文实例

 

var dbContext = DbContextHelper.getCurrentDbContext();

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Remoting.Messaging;
using System.Web;

namespace myWeb
{
    public class DbContextHelper
    {

        //保证一次请求共用一个上下文实例
        public static MyDbContext getCurrentDbContext()
        {
            #region HttpContext方式:内部封装了CallContext,所以HttpContext方式和CallContext方式差别不大
            //    //HttpCntext:一次请求,HttpContext已经保证只有一个实例
            //    MyDbContext dbContext = HttpContext.Current.Items["MyDbContext"] as MyDbContext;
            //    if (dbContext == null)
            //    { //当前Http上下文不存在当前对象
            //        dbContext = new MyDbContext();
            //        HttpContext.Current.Items.Add("MyDbContext", dbContext);
            //    }
            #endregion

            #region CallContext方式
            MyDbContext dbContext = CallContext.GetData("DbContext") as MyDbContext;
            if (dbContext == null)
            {
                dbContext = new MyDbContext();
                CallContext.SetData("DbContext", dbContext);
            }

            #endregion

            return dbContext;
        }



    }
    /// <summary>
    /// 这里的MyDbCotext类只是打一个比方,实际在用的时候需要更改成项目所需要用的实体类
    /// </summary>
    public class MyDbContext
    {

    }
}
DbContextHelper.cs

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-11
  • 2021-08-29
  • 2022-12-23
  • 2022-01-14
猜你喜欢
  • 2022-01-06
  • 2021-11-25
  • 2022-12-23
  • 2022-12-23
  • 2022-01-18
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案