Exemple #1
0
        public async Task <IActionResult> OnPostAsync(int id)
        {
            //判断是否已授权
            var isAuthorized = User.IsInRole(Constants.ContactAdministratorsRole);

            if (!isAuthorized)
            {
                return(new ChallengeResult());
            }

            //确认对应代码
            sourceCodeForDisplay = _sourceCodeManager.FindSourceCode(id);

            if (sourceCodeForDisplay == null)
            {
                return(NotFound());
            }

            //删除FileList中的记录
            _detectManager.DeleteItemFromInitList(sourceCodeForDisplay.GetFileName());

            //删除文件
            FileInfo file = new FileInfo("SourceCodeData//" + sourceCodeForDisplay.GetFileName());

            if (file.Exists)
            {
                file.Delete();
            }

            //删除对应的数据库记录
            await _sourceCodeManager.RemoveSourceCode(sourceCodeForDisplay);

            return(RedirectToPage("./Index"));
        }
Exemple #2
0
        public async Task GetSourceCodeForDisPlayAsync()
        {
            var SourceCodes = _sourceCodeManager.GetSourceCodeForDisPlays();

            foreach (var item in SourceCodes)
            {
                if (item.ifExist)
                {
                    sourceCodes_ForDisPlay.Add(item);
                }
                else
                {
                    //如果对应的.cs文件不存在的话: 删除数据库记录,并且删除对应的FileList记录项
                    await _sourceCodeManager.RemoveSourceCode(item);

                    _detectManager.DeleteItemFromInitList(item.GetFileName());
                }
            }
        }