Linking ConsoleMenu entries to appropriate methods
This commit is contained in:
@@ -1,10 +1,19 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using ConsoleTools;
|
using ConsoleTools;
|
||||||
|
|
||||||
namespace WD7UVN_HFT_2023241.Client
|
namespace WD7UVN_HFT_2023241.Client
|
||||||
{
|
{
|
||||||
|
public enum CRUDActions
|
||||||
|
{
|
||||||
|
GetAll,
|
||||||
|
GetById,
|
||||||
|
Create,
|
||||||
|
Update,
|
||||||
|
Delete
|
||||||
|
}
|
||||||
|
|
||||||
public class Program
|
public class Program
|
||||||
{
|
{
|
||||||
private static async Task Main(string[] args)
|
private static async Task Main(string[] args)
|
||||||
@@ -34,15 +43,13 @@ namespace WD7UVN_HFT_2023241.Client
|
|||||||
});
|
});
|
||||||
|
|
||||||
var crudMenu = new ConsoleMenu(args, level: 1)
|
var crudMenu = new ConsoleMenu(args, level: 1)
|
||||||
.Add("Sub_One", () => SomeAction("Sub_One"))
|
.Add("Get all", () => CRUD.TypeSelectorMenu(CRUDActions.GetAll))
|
||||||
.Add("Sub_Five", async (cancellationToken) => await SomeAction2(cancellationToken))
|
.Add("Get by id", () => CRUD.TypeSelectorMenu(CRUDActions.GetById))
|
||||||
.Add("Get all", ConsoleMenu.Close)
|
.Add("Create", () => CRUD.TypeSelectorMenu(CRUDActions.Create))
|
||||||
.Add("Get by id", ConsoleMenu.Close)
|
.Add("Update", () => CRUD.TypeSelectorMenu(CRUDActions.Update))
|
||||||
.Add("Create", ConsoleMenu.Close)
|
.Add("Delete", () => CRUD.TypeSelectorMenu(CRUDActions.Delete))
|
||||||
.Add("Update", ConsoleMenu.Close)
|
.Add("Back", ConsoleMenu.Close)
|
||||||
.Add("Delete", ConsoleMenu.Close)
|
.Add("Exit", () => Environment.Exit(0))
|
||||||
.Add("Sub_Close", ConsoleMenu.Close)
|
|
||||||
.Add("Sub_Exit", () => Environment.Exit(0))
|
|
||||||
.Configure(commonConfig)
|
.Configure(commonConfig)
|
||||||
.Configure(config =>
|
.Configure(config =>
|
||||||
{
|
{
|
||||||
@@ -50,10 +57,8 @@ namespace WD7UVN_HFT_2023241.Client
|
|||||||
});
|
});
|
||||||
|
|
||||||
var menu = new ConsoleMenu(args, level: 0)
|
var menu = new ConsoleMenu(args, level: 0)
|
||||||
.Add("One", () => SomeAction("One"))
|
|
||||||
.Add("CRUD", crudMenu.Show)
|
.Add("CRUD", crudMenu.Show)
|
||||||
.Add("Non-CRUD", nonCrudMenu.Show)
|
.Add("Non-CRUD", nonCrudMenu.Show)
|
||||||
.Add("Close", ConsoleMenu.Close)
|
|
||||||
.Add("Exit", () => Environment.Exit(0))
|
.Add("Exit", () => Environment.Exit(0))
|
||||||
.Configure(commonConfig)
|
.Configure(commonConfig)
|
||||||
.Configure(config =>
|
.Configure(config =>
|
||||||
@@ -63,24 +68,8 @@ namespace WD7UVN_HFT_2023241.Client
|
|||||||
config.EnableBreadcrumb = true;
|
config.EnableBreadcrumb = true;
|
||||||
});
|
});
|
||||||
|
|
||||||
var token = new CancellationTokenSource(7000).Token;
|
var token = new CancellationTokenSource().Token;
|
||||||
await menu.ShowAsync(token);
|
await menu.ShowAsync(token);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void SomeAction(string text)
|
|
||||||
{
|
|
||||||
Console.WriteLine(text);
|
|
||||||
Console.WriteLine("Press any key to continue...");
|
|
||||||
Console.ReadKey();
|
|
||||||
}
|
|
||||||
|
|
||||||
private static async Task SomeAction2(CancellationToken token)
|
|
||||||
{
|
|
||||||
Console.WriteLine("start delay...");
|
|
||||||
await Task.Delay(2000, token);
|
|
||||||
Console.WriteLine("end delay");
|
|
||||||
Console.WriteLine("Press any key to continue...");
|
|
||||||
Console.ReadKey();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user