0
   private Table<Gallery> galleryTable;
   public GalleryRepository ( string connectionString ) {
        dc = new DataContext(connectionString);
        galleryTable = dc.GetTable<Gallery>();
    }

    public void SaveGallery(Gallery gallery) {

        if (gallery.GalleryId == 0)
            galleryTable.InsertOnSubmit(gallery);
        else if (galleryTable.GetOriginalEntityState(gallery) == null) {
            galleryTable.Attach(gallery);
            galleryTable.Context.Refresh(RefreshMode.KeepCurrentValues, gallery);
        }
        galleryTable.Context.SubmitChanges();
    }

テーブルに新しいギャラリーを挿入すると、メソッドは、オブジェクト エラーのインスタンスに設定されていないオブジェクト参照をスローします。ギャラリーはnullではなく、galleryTableでもありません よろしくお願いします

4

1 に答える 1

0

問題は、私が持っていたギャラリーエンティティにありました

   private EntitySet<Tag> _Tags;

    [System.Data.Linq.Mapping.Association(Storage = "_Tags", OtherKey = "TagId")]
    public EntitySet<Tag> Tags
    {
        get { return this._Tags; }
        set { this._Tags.Assign(value); }
    }

でnull参照をスローしていたthis._Tags.Assign(value); ので、空のEntitySetを_Tags変数に割り当て、問題を解決しました

于 2011-02-24T06:46:05.407 に答える