Question: ASP.Net 5 Console Application Entry Point


ASP.Net 5 Console Application Entry Point

Answers 1
Added at 2016-01-08 09:01

I've been trying to build a console application in ASP.Net 5 and am having some trouble with the entry point. I've looked at the following: Entry point can be marked with the 'async' modifier on CoreCLR? And When I create a Console Application (Package) with Visual Studio 2015 It creates the following Program File

public class Program
    public static void Main(string[] args)

However I want to utilise the instance have Main as an instance method so I can add a parameterless constructor of Program and have some Dependency Injection magic.. However when I remove "static" Visual Studio gives me the following error:

"Program does not have a static 'Main' method suitable for an entry point".

I noticed in the project.json file I have the following entry:

"compilationOptions": {
    "emitEntryPoint": true

If I change this to false. The application builds but it does not execute the Main method. But it does seem to call my Program Constructor. Am I then supposed to just call Main() manually? I feel like I'm doing something wrong here. I would appreciate any help.

Answers to

ASP.Net 5 Console Application Entry Point

nr: #1 dodano: 2016-01-08 11:01

The DNX platform wants to be compatible with regular Program.Main entry points. Therefore console apps require to have a static entry point:

public static void Main(string[] args) { ... }

It has been changed since RC1:

Related: Runtime services no longer get injected into DNX console app (RC1)

Source Show
◀ Wstecz