public override bool FileExists(string virtualPath)
        {
            if (DomainServiceVirtualPathProvider.OwnsFile(virtualPath))
            {
                return(true);
            }

            return(base.FileExists(virtualPath));
        }
        public override string GetCacheKey(string virtualPath)
        {
            if (DomainServiceVirtualPathProvider.OwnsFile(virtualPath))
            {
                // We were able to provide the file, so we're responsible for returning a cache key.
                return(virtualPath);
            }

            return(base.GetCacheKey(virtualPath));
        }
        public override VirtualFile GetFile(string virtualPath)
        {
            KeyValuePair <string, Type> domainServiceEntry;

            if (DomainServiceVirtualPathProvider.OwnsFile(virtualPath, out domainServiceEntry))
            {
                return(new DomainServiceVirtualFile(domainServiceEntry.Value, virtualPath));
            }

            return(base.GetFile(virtualPath));
        }
        public override CacheDependency GetCacheDependency(string virtualPath, IEnumerable virtualPathDependencies, DateTime utcStart)
        {
            if (DomainServiceVirtualPathProvider.OwnsFile(virtualPath))
            {
                // Return a no-op cache dependency such that ASP.NET doesn't create a FileSystemWatcher
                // to listen for changes to this file.
                return(new DomainServiceCacheDependency());
            }

            return(base.GetCacheDependency(virtualPath, virtualPathDependencies, utcStart));
        }