src/SSCMS.Cli/Jobs/DataBackupJob.cs
(开头部分) 10KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Datory;
using Mono.Options;
using SSCMS.Cli.Abstractions;
using SSCMS.Cli.Core;
using SSCMS.Plugins;
using SSCMS.Services;
using SSCMS.Utils;
namespace SSCMS.Cli.Jobs
{
public class DataBackupJob : IJobService
{
public string CommandName => "data backup";
private string _directory;
private List<string> _includes;
private List<string> _excludes;
private int _maxRows;
private int _pageSize = CliConstants.DefaultPageSize;
private bool _isHelp;
private readonly ISettingsManager _settingsManager;
private readonly IDatabaseManager _databaseManager;
private readonly OptionSet _options;
public DataBackupJob(ISettingsManager settingsManager, IDatabaseManager databaseManager)
{
_settingsManager = settingsManager;
_databaseManager = databaseManager;
_options = new OptionSet
{
{
"d|directory=", "Backup folder name",
v => _directory = v
},
{
"includes=", "Include table names, separated by commas, default backup all tables",
v => _includes = v == null ? null : ListUtils.GetStringList(v)
},
{
"excludes=", "Exclude table names, separated by commas",
v => _excludes = v == null ? null : ListUtils.GetStringList(v)
},
{
"max-rows=", "Maximum number of rows to backup, all data is backed up by default",
v => _maxRows = v == null ? 0 : TranslateUtils.ToInt(v)
},
{
"page-size=", "The number of rows fetch at a time, 1000 by default",
v => _pageSize = v == null ? CliConstants.DefaultPageSize : TranslateUtils.ToInt(v)
},
{
"h|help", "Display help",
v => _isHelp = v != null
}
};
}
后面还有 191 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
