public VersionedField CreateField <TEntity, TId>(TEntity owner, string fieldName, Action <VersionedField> initAction = null) where TEntity : IEntity <TId> { var field = new VersionedField { Name = fieldName, }; initAction?.Invoke(field); field.SetOwner(owner); _fieldRepository.Insert(field); _currentUowProvider.Current.SaveChanges(); return(field); }
public async Task <VersionedFieldVersion> GetLastVersionAsync(VersionedField field) { var version = await _fieldVersionRepository.GetAll().Where(v => v.Field == field).OrderByDescending(f => f.CreationTime).FirstOrDefaultAsync(); return(version); }
public string Serialize(VersionedField vf) { return ($"{vf.Id}{_cat}{vf.ItemId}{_cat}{vf.Language}{_cat}{vf.Version}{_cat}{vf.FieldId}{_cat}{vf.Value}{_cat}{vf.Created.ToString(_format)}{_cat}{vf.Updated.ToString(_format)}{_pig}"); }