控制台应用程序入口点和静态非异步方法

时间:2019-03-17 12:08:39

标签: c# .net visual-studio-2017 console-application

我对调度程序触发的控制台应用程序的查询很少。此应用程序是自动发送邮件的。

(1)要从Windows Task Scheduler执行,方法或入口点是否需要任何特定的更改?我刚刚将Scheduler指向.exe所在的Bin \ Debug路径。

(2)由于入口点(Main)是静态的,因此我不得不将所有方法都更改为静态。这是否对重复进行的这项工作有任何影响?我想让所有方法都是非静态的,但控制台入口点要求静态。

(3)有两种方法。第一个提取数据并调用第二个以发送邮件。我没有使用异步。这会造成任何问题吗?

1 个答案:

答案 0 :(得分:1)

我想这个问题与您先前的问题here

有关

(1)要从Windows Task Scheduler中执行,不需要对方法或入口点进行特定更改。如果您的应用程序是从Visual Studio运行或通过双击可执行文件运行,则它也应从任务计划程序运行。

(2)要从静态Main()调用非静态方法,需要创建该类的对象,然后使用该对象调用方法。请在下面检查。

public class TestClass
{
    public static void Main(string[] args)
    {
        var testClassObj = new TestClass();
        testClassObj.NonStaticMethod();
        ...
    }

    public void NonStaticMethod()
    {
        ...
    }
}

(3)不,那里应该没有问题