LINQ TO SQL中还是用传统的连接串方式建立DbContext更好些

    首先,在LINQTOSQL中可以这样建立一个dbcontext
     private TEntity GetOriginal(TEntity entity)
        {
            using (Entity.EEE114.LinqEEE114DataContext context = new Entity.EEE114.LinqEEE114DataContext())
            {
                var table = context.GetTable<TEntity>();
                return table.FirstOrDefault(e => e == entity);
            }
        }
      这种写法缺陷就是每次在重新托数据库时,它就会自动生成一个连接串,它的连接串保存在properies目录的settings.settings文件中,当我们从一个本地服务器
         发布到公网服务器时,就会出现问题,因为如果你没有指定“连接串”,它就会用这个settings.settings里的连接串,所以,我们为了扩展性好,还是把链接串
         习惯上定义在web.config里,然后在建立 dbcontext对象时,可以这样写
          private TEntity GetOriginal(TEntity entity)
         {
            using (Entity.EEE114.LinqEEE114DataContext context = new Entity.EEE114.LinqEEE114DataContext(System.Configuration.ConfigurationManager.ConnectionStrings["db"].ToString()))
            {
                var table = context.GetTable<TEntity>();
                return table.FirstOrDefault(e => e == entity);
            }
         }
        以后在发布到公网后,只要修改web.config就可以了,呵呵。

posted @ 2012-01-07 13:09  张占岭  阅读(1312)  评论(0编辑  收藏  举报