protected override IVirtualFile AddFileToBackingDirectoryOrDefault(string fileName, byte[] contents)
        {
            if (Files.Any(f => f.Name == fileName))
            {
                throw new ArgumentException("A file with the same name already exists.");
            }

            var newFile = new InMemoryVirtualFile(VirtualPathProvider, this)
            {
                FilePath     = VirtualPathProvider.CombineVirtualPath(this.VirtualPath, fileName),
                FileName     = fileName,
                ByteContents = contents
            };

            this.files.Add(newFile);
            return(newFile);
        }
Exemple #2
0
 public virtual string ResolvePhysicalPath(string virtualPath, IRequest httpReq)
 {
     return(VirtualPathProvider.CombineVirtualPath(VirtualPathProvider.RootDirectory.RealPath, virtualPath));
 }
        public virtual IVirtualFile Move(System.Collections.Generic.Stack <string> destDirVirtualPath, string name)
        {
            var virtualPath = destDirVirtualPath.Aggregate((a, b) => VirtualPathProvider.CombineVirtualPath(a, b));

            return(MoveTo(virtualPath, name));
        }
        public virtual IVirtualFile Copy(System.Collections.Generic.Stack <string> destDirVirtualPath)
        {
            var virtualPath = destDirVirtualPath.Aggregate((a, b) => VirtualPathProvider.CombineVirtualPath(a, b));

            return(CopyTo(virtualPath));
        }