25yicms利用ASP.NET(C#)+MSSQL技术全力打造功能最强大的营销型企业网站管理系统,企业做网站系统,做网站软件,提供div+css企业网站模板。
阅读内容

c#控制台应用程序输出运行一下就关闭


时间:2013/01/24   来源:CMS
我想大家用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/
点击次数:       打印此页  关闭