如何从静态类引用Linq2SQL类

时间:2009-05-06 03:16:50

标签: c# asp.net

我遇到一个奇怪的问题,我有一个像这样的静态类

  public static class BlogDataAccess
{
    private static Blog _Blg;
    public static Blog Blg
    {
        get
        {
           _Blg = new Blog ();
           return _Blog ;
        }
    }

}

然后在我的页面中,我执行以下操作

  var DataContext= new DataClasses();
  BlogDataAccess.Blg.ArticleTitle ="Title";
  DataContext.Blog.InsertOnSubmit(BlogDataAccess.Blg);
  DataContext.SubmitChanges();

记录已插入,但ArticleTitle字段为空值。

1 个答案:

答案 0 :(得分:4)

每次访问BlogDataAccess.Blg时,您都会创建一个新对象。我认为你的意思是实现像这样的lazy-instantiation:

public static class BlogDataAccess
{
    private static Blog _Blg;
    public static Blog Blg
    {
        get
        {
            if(_Blg == null)
                _Blg = new Blog();

            return _Blg;
        }
    }

}