Beispiel #1
0
 private tag_versions MapTagVersions(tags tags)
 {
     return(new tag_versions
     {
         WorkflowState = tags.WorkflowState,
         Version = tags.Version,
         CreatedAt = tags.CreatedAt,
         UpdatedAt = tags.UpdatedAt,
         Name = tags.Name,
         TagId = tags.Id
     });
 }
Beispiel #2
0
        public async Task Delete(MicrotingDbContext dbContext)
        {
            tags tag = await dbContext.tags.FirstOrDefaultAsync(x => x.Id == Id);

            if (tag == null)
            {
                throw new NullReferenceException($"Could not find Tag with Id: {Id}");
            }

            tag.WorkflowState = Constants.Constants.WorkflowStates.Removed;

            if (dbContext.ChangeTracker.HasChanges())
            {
                tag.Version  += 1;
                tag.UpdatedAt = DateTime.UtcNow;

                dbContext.tag_versions.Add(MapTagVersions(tag));
                await dbContext.SaveChangesAsync().ConfigureAwait(false);
            }
        }
Beispiel #3
0
        public async Task Update(MicrotingDbContext dbContext)
        {
            tags tag = await dbContext.tags.FirstOrDefaultAsync(x => x.Id == Id);

            if (tag == null)
            {
                throw new NullReferenceException($"Could not find Tag with Id: {Id}");
            }

            tag.Name          = Name;
            tag.TaggingsCount = TaggingsCount;
            tag.WorkflowState = WorkflowState; // TODO extend tests to include WorkflowState

            if (dbContext.ChangeTracker.HasChanges())
            {
                tag.Version  += 1;
                tag.UpdatedAt = DateTime.UtcNow;

                dbContext.tag_versions.Add(MapTagVersions(tag));
                await dbContext.SaveChangesAsync().ConfigureAwait(false);
            }
        }