Linq to Sql: Ошибка на InsertOnSubmit - PullRequest
0 голосов
/ 24 февраля 2011
   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();
    }

При вставке новой галереи в таблицу метод выбрасывает ссылку на объект, не установленную для экземпляра ошибки объекта.Галерея не является нулевой и не является галереейТаблица Заранее спасибо

1 Ответ

0 голосов
/ 24 февраля 2011

Так что проблема была с моей сущностью Галереи У меня было

   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); }
    }

и он выбрасывал нулевую ссылку на this._Tags.Assign(value); Поэтому я назначил пустой EntitySet переменной _Tags и проблема решена

...