public Folder CreateFolder(string folderName, string parentId = null) { string folderTypeName = this._entityFactory.GetEntityTypeStringName(typeof(Folder)); var folder = this._entityFactory.CreateEntityForType(folderTypeName) as Folder; CloudBlobContainer container; if (string.IsNullOrWhiteSpace(parentId)) { container = CurrentCloudBlobClient.GetContainerReference(folderName.ToLower()); container.CreateIfNotExists(); MapCloudBlobContainer2Folder(container, folder); } else { var path = Combine(parentId, folderName); string containerName = GetContainer(path); string prefix = GetPrefix(path); container = CurrentCloudBlobClient.GetContainerReference(containerName); if (!container.ListBlobs(prefix).Any()) { container.GetBlockBlobReference(Combine(prefix, DirectoryPlaceHolder)).UploadText(string.Empty); } var directory = container.GetDirectoryReference(prefix); MapCloudBlobDirectory2Folder(directory, folder); } ChangeTracker.Attach(folder); return(folder); }
void DSCatalogClient_ReadingEntity(object sender, ReadingWritingEntityEventArgs e) { if (MergeOption != MergeOption.NoTracking) { ChangeTracker.Attach(e.Entity); } }
public void Update <T>(T item) where T : class { if (!ChangeTracker.IsAttached(item)) // consistent implementation with a repository class { ChangeTracker.Attach(item); } ChangeTracker.Update(item); }
public void Attach <T>(T item) where T : class { if (ChangeTracker.IsAttached(item)) { #if DEBUG Debug.WriteLine("Object {0} already attached", item.ToString()); #endif return; } ChangeTracker.Attach(item); }
public void Attach <T>(T item) where T : class { ChangeTracker.Attach(item); }