CmdCheckEnvironment.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. namespace etoy
  2. {
  3. class CmdCheckEnvironment : Command
  4. {
  5. public override string Description => "程序环境检测";
  6. protected override void OnProcess()
  7. {
  8. SetProgress(0F);
  9. //if (!Directory.Exists(Context.Option.CsvOutput))
  10. // throw new Exception("配置表CSV文件夹不存在");
  11. SetProgress(0.2F);
  12. var pipelineType = (PipelineType)Context.Option.PipelineType;
  13. if (pipelineType is PipelineType.All or PipelineType.Client)
  14. {
  15. if (Directory.Exists(Context.Option.ClientCodeOutput))
  16. foreach (string file in Directory.GetFiles(Context.Option.ClientCodeOutput, "*.cs", SearchOption.AllDirectories))
  17. File.Delete(file);
  18. Directory.CreateDirectory(Context.Option.ClientCodeOutput);
  19. SetProgress(0.4F);
  20. if (File.Exists(Context.Option.ClientDatabaseOutput))
  21. File.Delete(Context.Option.ClientDatabaseOutput);
  22. }
  23. if (pipelineType is PipelineType.All or PipelineType.Server)
  24. {
  25. if (!Directory.Exists(Context.Option.ServerCodeOutput))
  26. { // 服务端的代码路径下可能有其它脚本,只能替换不能删文件夹
  27. Directory.CreateDirectory(Context.Option.ServerCodeOutput);
  28. }
  29. SetProgress(0.6F);
  30. if (File.Exists(Context.Option.ServerDatabaseOutput))
  31. File.Delete(Context.Option.ServerDatabaseOutput);
  32. }
  33. Completed();
  34. }
  35. }
  36. }