Where can I find the console or debug output from code executed in the package manager window?

ef-code-first ef-migrations entity-framework nuget

Question

I'm using EntityFramework code first with migrations. From the package manager console, I'm running "update-database". This executes Configuration.Seed(context) which I have overridden.

    protected override void Seed(WebContext context)
    {

        Console.WriteLine("Console Test");
        Debug.WriteLine("Debug Test");
        Trace.WriteLine("Trace Test");
    }

Where can I find that output?

Better yet, How do I output back to the package manager window?

Thx, Dan

1
46
3/30/2012 1:02:15 PM

Accepted Answer

Where can I find that output?

Sorry, but the quick answer is basically nowhere.

To be precise at least not in the package manager console.

Debug.WriteLine("Debug Test");
Trace.WriteLine("Trace Test");

You can see the output of the Debug... and Trace... methods if you attach another Visual Studio to debug the Visual Studio instance which is running the update-database command. Then in the debuggin VS you can see the output in the Output Window.

Console.WriteLine("Console Test");

You can see the output of the Console... methods if you run the migrations with the migrate.exe command line tool which comes with EF:

enter image description here

How do I output back to the package manager window?

I have here also bad news, after a quick "reflectoring": with the current implementation of the EF migrations it's not supported to display custom information during execution of the update-database (or any other command).

35
3/30/2012 7:28:32 PM

Popular Answer

A quick hack I use to be able to quickly find a value in my Seed method is simply to throw an exception with a value I care about, e.g.

throw new Exception(yourValue);

This errors out the Seed, but my exception/value appears in my package manager console.



Related Questions





Related

Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow
Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow