我想大家用C#做web程序开发的比较多,如网站后台管理系统就是用web程序开发的,而用来做应用程序的就少,但是作为技术人员,有时总会遇到需要做应用程序的事情。本人今天就遇到了,这时需要转到做应用程序就真不太适应,刚一开始就遇到了c#控制台应用程序输出运行一下就关闭的问题,参考了一些资料,做了如下总结。
最简单的办法就是在main主程序中加入Console.ReadKey();
Console.ReadKey()是等待键盘输入,退出程序。使调试时能看到输出结果。如果没有此句,命令窗口会一闪而过。能够让程序在接收一次用户输入后再退出,就能看到输出的内容。
如需要得到用户在控制台应用程序里输入的值就需要用到下面代码:
System.Console.Read();
string yesORno = Console.ReadLine().ToString();
Console.WriteLine(yesORno);
解决在c#控制台应用程序输出运行一下就关闭还可以用到Console.ReadLine();
Console.ReadLine()会等待直到用户按下回车,一次读入一行
Console.ReadKey()则是等待用户按下任意键,一次读入一个字符。
一般用到c#控制台应用程序,会进行线程来控制,大家可以看下如下代码就可以用线程来控制,这才是大家在项目中需要用的到的,而且可以保证web安全。
private Thread thdWatchQu = null;
//任务队列
Queue QueTask = Queue.Synchronized(new Queue());
public void Run()
{
Console.WriteLine("系统正在启动服务....");
RunHttpServer();
Thread.Sleep(1000 * 30);
}
/// <summary>
/// 启动HttpServer
/// </summary>
private void RunHttpServer()
{
using (HttpListener listerner = new HttpListener())
{
HttpTask httpTask = new HttpTask();
httpTask.Start();
}
}
private void Start()
{
thdWatchQu = new Thread(WatchTaskQueue);
thdWatchQu.Start();
}
/// <summary>
/// 监视任务队列线程
/// </summary>
private void WatchTaskQueue()
{
while (true)
{
int count = QueTask.Count;
if (count > 0)
{
}
Thread.Sleep(100);
}
}
用线程来控制c#控制台应用程序输出运行一下就关闭的问题,是最佳的解决办法,也是我们在项目中需要用到的方法。
除非注明,文章均为25亿网站后台管理系统原创,转载请以链接形式注明出处,谢谢。
本文地址:http://www.25yi.com/wangyesheji/ckongzhitai-279/