C# 如何在c中读取用户输入以启动方法#
我正在创建一个监控应用程序,用于测试服务器是否正在运行 我希望用户选择他们在Dev、stage或Prod中运行的环境,然后针对特定环境进行测试 我是c#的新手,因此希望得到一些关于如何进行这项工作的指导 在伪代码中C# 如何在c中读取用户输入以启动方法#,c#,.net,user-input,C#,.net,User Input,我正在创建一个监控应用程序,用于测试服务器是否正在运行 我希望用户选择他们在Dev、stage或Prod中运行的环境,然后针对特定环境进行测试 我是c#的新手,因此希望得到一些关于如何进行这项工作的指导 在伪代码中 为不同的环境定义所有服务器地址 要求用户选择他们想要测试的环境 读取用户的输入,并将其带到将读取环境并开始测试服务器是否正在运行的方法(与输入同名) 我不知道该怎么办…有什么帮助吗 到目前为止,我所拥有的是: class Program { static void Main(
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Please choose your environment and Username to test from below");
Console.WriteLine("Dev");
Console.WriteLine("Stage");
Console.WriteLine("Prod");
string inputtedText = "";
inputtedText = Console.ReadLine();
if (inputtedText == "Dev") { Program.TestServer(null); }
if (inputtedText == "Stage") { Program.TestServer(null); }
if (inputtedText == "Prod") { Program.TestServer(null); }
}
static void TestServer (string[] args)
{
//how to read the specific username and server for this credential creation?
System.Net.NetworkCredential credentials = new System.Net.NetworkCredential(ServerName, UserName);
}
由于缺乏细节,从我听到的情况来看,我猜你在寻找这样的东西:
static void Main(string[] args)
{
Console.WriteLine("Please choose your environment and Username to test from below");
Console.WriteLine("Dev");
Console.WriteLine("Stage");
Console.WriteLine("Prod");
string inputtedText = "";
inputtedText = Console.ReadLine();
if (inputtedText == "Dev") { Program.TestServer("DevMachine", "DevUser", "DevPass"); }
if (inputtedText == "Stage") { Program.TestServer("StageMachine", "StageUser", "StagePass"); }
if (inputtedText == "Prod") { Program.TestServer("ProdMachine", "ProdUser", "ProdPass"); }
}
static void TestServer (string ServerName, string UserName, string UserPassword)
{
//Use ServerName UserName and UserPassword
}
上面的代码使用硬编码值。你应该考虑把这些值存储在例如< p>因为缺少细节,从我听到的,我猜你正在寻找类似的东西:
static void Main(string[] args)
{
Console.WriteLine("Please choose your environment and Username to test from below");
Console.WriteLine("Dev");
Console.WriteLine("Stage");
Console.WriteLine("Prod");
string inputtedText = "";
inputtedText = Console.ReadLine();
if (inputtedText == "Dev") { Program.TestServer("DevMachine", "DevUser", "DevPass"); }
if (inputtedText == "Stage") { Program.TestServer("StageMachine", "StageUser", "StagePass"); }
if (inputtedText == "Prod") { Program.TestServer("ProdMachine", "ProdUser", "ProdPass"); }
}
static void TestServer (string ServerName, string UserName, string UserPassword)
{
//Use ServerName UserName and UserPassword
}
上面的代码使用硬编码值。你应该考虑将这些值存储在例如中,我不确定你想做什么;您想读取一个输入并调用一个与输入的名称相同的方法吗?是的,没错,很抱歉,我没有说清楚。您已经知道如何要求用户输入环境名称并使用它。凭证有什么问题?您不能执行相同的操作吗?请用户输入它们?dev stage和prod的服务器Id不同,用户可能不知道它的确切Id。。我需要在凭据中指定服务器id。为什么不将有关用户的信息存储在数据库或配置文件中,然后执行特定任务?我不确定您想做什么;您想读取一个输入并调用一个与输入的名称相同的方法吗?是的,没错,很抱歉,我没有说清楚。您已经知道如何要求用户输入环境名称并使用它。凭证有什么问题?您不能执行相同的操作吗?请用户输入它们?dev stage和prod的服务器Id不同,用户可能不知道它的确切Id。。我需要在凭据中指定服务器id。为什么不将有关用户的信息存储在数据库或配置文件中,然后执行特定任务?