コード例 #1
0
        private static void SynFile(MsgSynFileListMessage fileList)
        {
            Logger.SysLog("尝试同步设置", "主记录");
            var requestFileList = new List <SynSingleFile>();

            fileWaitToUpdate = fileNowReceive = 0;
            foreach (var f in fileList.List)
            {
                var localFile = HttpUtil.GetMD5ByMD5CryptoService("setting/" + f.Name);
                if (f.Version != localFile)
                {
                    fileWaitToUpdate++;
                    //检测到hash不相同则更新
                    requestFileList.Add(new SynSingleFile()
                    {
                        Name = f.Name
                    });
                }
                ;
            }
            if (requestFileList.Count > 0)
            {
                StringBuilder logInfo = new StringBuilder();
                requestFileList.ForEach((x) => logInfo.Append('\n').Append(x.Name));
                Logger.SysLog(logInfo.ToString(), "主记录");
                Tcp.Send(new MsgSynFileListMessage(requestFileList));
            }
            else
            {
                ServerResetConfig();
            }
        }
コード例 #2
0
        private static void MinerCallBack_MsgSynFileList(ClientMessageEventArgs e)
        {
            var rawList = e.Message["List"];
            var list    = new List <SynSingleFile>();

            foreach (var item in rawList)
            {
                list.Add(new SynSingleFile()
                {
                    Name    = item["Name"]?.ToString(),
                    Version = item["Version"]?.ToString()
                });
            }

            var synFileList = new MsgSynFileListMessage(list);

            SynFile(synFileList);
        }