private static string ComputeHashForFile(string path, ConfigCachingPolicy policy)
        {
            switch (policy)
            {
                case ConfigCachingPolicy.ByFileContent:
                    using (var md5 = MD5.Create())
                    {
                        using (var stream = File.OpenRead(path))
                        {
                            var fileMd5 = md5.ComputeHash(stream);
                            return BitConverter.ToString(fileMd5);
                        }
                    }
                case ConfigCachingPolicy.ByFileModified:
                    var fileInfo = new FileInfo(path);
                    return fileInfo.LastWriteTimeUtc.ToBinary().ToString();
                case ConfigCachingPolicy.Permanent:
                    return path;
            }

            throw new InvalidOperationException("Cannot calculate file hash for ConfigCachinePolicy.None");
        } 
Exemple #2
0
        private static string ComputeHashForFile(string path, ConfigCachingPolicy policy)
        {
            switch (policy)
            {
            case ConfigCachingPolicy.ByFileContent:
                using (var md5 = MD5.Create())
                {
                    using (var stream = File.OpenRead(path))
                    {
                        var fileMd5 = md5.ComputeHash(stream);
                        return(BitConverter.ToString(fileMd5));
                    }
                }

            case ConfigCachingPolicy.ByFileModified:
                var fileInfo = new FileInfo(path);
                return(fileInfo.LastWriteTimeUtc.ToBinary().ToString());

            case ConfigCachingPolicy.Permanent:
                return(path);
            }

            throw new InvalidOperationException("Cannot calculate file hash for ConfigCachinePolicy.None");
        }