NuGet Package install fails with F# projects

description

I got the following exception, doesn't look like a major issue but want to update. I am writing my code in F# if that has anything to do with it.

PM> Install-Package EntityFramework -Pre

You are downloading EntityFramework from Microsoft, the license agreement to which is available at go.microsoft.com/fwlink. Check the package for additional dependencies, which may come with their own license agreement(s). Your use of the package and dependencies
constitutes your acceptance of their license agreements. If you do not accept the license agreement(s), then delete the relevant components from your device.

System.NullReferenceException: Object reference not set to an instance of an object.
at System.Data.Entity.ConnectionFactoryConfig.InitializeEntityFrameworkCommand.Execute()
at System.Data.Entity.Migrations.MigrationsDomainCommand.Execute(Action command)
Install-Package : Object reference not set to an instance of an object.
At line:1 char:1

Unfortunately, F# seems to be an "also-ran" in the MS family of languages. Some five years on and it still doesn't have refactoring support; I ran into all sorts of issues getting F# projects to build on Microsoft's public TFS server; and I'm
guessing from this bug getting through that the good folks managing the Entity Framework apparently never touch the language. Oh well. Functional programming, we hardly knew ye.

We should update our Nuget package install to detect that it is installing in an F# project and not run the powershell scripts in this case. If we don't run the powershell scripts we the dependencies and upgrade scenarios would not be changed, but it would
unblock F# users.

This would be an easy fix to unblock this scenario.

In the interim, users can extract EntityFramework.dll from the Nuget package file and add manually references to the components that they need.

Solution is to check that the VS project has a CodeModel (which F# doesn't, but we use when doing app.config/references stuff) and if not then allow the package to install without trying to do any app.config/references stuff.