こんにちは この例のベストプラクティスコードがあるかどうか、またはより簡単にするためのヒントを知りたい。 すべてのクラスはChoixの子クラスですが、すべてのメソッドは子クラスでオーバーライドされます。 私はこれ以上の助けをありがとう/クラスがChoixのとメソッドの子クラスを適切に上書きされている場合は、何を提案することは動作するはず同じ親クラスの子クラス間の切り替えを最適化する
string arguments = args[0].ToLower();
bool load;
bool lauch;
bool result;
switch (arguments)
{
case "AddTenant":
AddTenant AddTenant = new AddTenant();
load = AddTenant.Load();
lauch = AddTenant.Lauch();
result = AddTenant.Result();
break;
case "BackupDb":
BackupDb BackupDb = new BackupDb();
load = BackupDb.Load();
lauch = BackupDb.Lauch();
result = BackupDb.Result();
break;
case "ExtractTenant":
ExtractTenant ExtractTenant = new ExtractTenant();
load = ExtractTenant.Load();
lauch = ExtractTenant.Lauch();
result = ExtractTenant.Result();
break;
case "InstallDb":
InstallDb InstallDb = new InstallDb();
load = InstallDb.Load();
lauch = InstallDb.Lauch();
result = InstallDb.Result();;
break;
case "RestoreDb":
RestoreDb RestoreDb = new RestoreDb();
load = RestoreDb.Load();
lauch = RestoreDb.Lauch();
result = RestoreDb.Result();
break;
case "UpgradeTenant":
UpgradeTenant UpgradeTenant = new UpgradeTenant();
load = UpgradeTenant.Load();
lauch = UpgradeTenant.Lauch();
result = UpgradeTenant.Result();
break;
default:
Help Help = new Help();
load = Help.Load();
lauch = Help.Lauch();
result = Help.Result();
break;
}
Console.WriteLine(load+" "+lauch+" "+result);
は、など様々なIMPL 'ExtractTenant'、' InstallDb'を行います同じインタフェースを使用できますか?または、それらに 'Load'、' Lau(n)ch'、 'Result'メソッドと同じインターフェースを実装させることができますか? – MAV