2017-10-05 1 views
1

J'ai configuré un projet webapi asp.net dans VS Code (cmd: dotnet new webapi). J'ai installé Nuget et chargé MySql.Data, Version = "6.9.9" dans mon projet. Après la restauration du projet (cmd: DotNet restore) Je reçois l'erreur suivante:.Compatibilité .NET avec MySql.Data

error NU1202: Package MySql.Data 6.9.9 is not compatible with netcoreapp1.1 (.NETCoreApp, Version=v1.1) 

Voici mon .csproj Dossier:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<Project Sdk="Microsoft.NET.Sdk.Web"> 
    <PropertyGroup> 
    <TargetFramework>netcoreapp1.1</TargetFramework> 
    <PackageTargetFallback>$(PackageTargetFallback);portable-net45+win8+wp8+wpa81;</PackageTargetFallback> 
    <TypeScriptCompileBlocked>true</TypeScriptCompileBlocked> 
    </PropertyGroup> 
    <ItemGroup> 
    <Folder Include="wwwroot\"/> 
    </ItemGroup> 
    <ItemGroup> 
    <PackageReference Include="Microsoft.AspNetCore" Version="1.1.2"/> 
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.3"/> 
    <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.1"/> 
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.2"/> 
    <PackageReference Include="MySql.Data" Version="6.9.9"/> 
    </ItemGroup> 
    <ItemGroup> 
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.1"/> 
    <DotNetCliToolReference Include="Microsoft.DotNet.Watcher.Tools" Version="1.0.0"/> 
    </ItemGroup> 
</Project> 

Tout le monde sait quelles versions sont compatibles ensemble? Merci d'avance ...

Répondre

1

En suivant cette introduction: How to change target framework with VS 2017 RC? J'ai résolu le problème.

Mon csproj-fichier ressemble maintenant à ceci:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<Project Sdk="Microsoft.NET.Sdk.Web"> 
    <PropertyGroup> 
    <TargetFramework>net462</TargetFramework> 
    <RuntimeIdentifier>win7-x86</RuntimeIdentifier> 
    <PackageTargetFallback>$(PackageTargetFallback);portable-net45+win8+wp8+wpa81;</PackageTargetFallback> 
    <TypeScriptCompileBlocked>true</TypeScriptCompileBlocked> 
    </PropertyGroup> 
    <ItemGroup> 
    <Folder Include="wwwroot\"/> 
    </ItemGroup> 
    <ItemGroup> 
    <PackageReference Include="Microsoft.AspNetCore" Version="1.1.2"/> 
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.3"/> 
    <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.1"/> 
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.2"/> 
    <PackageReference Include="MySql.Data" Version="6.9.9"/> 
    </ItemGroup> 
    <ItemGroup> 
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.1"/> 
    <DotNetCliToolReference Include="Microsoft.DotNet.Watcher.Tools" Version="1.0.0"/> 
    </ItemGroup> 
</Project> 

Restauration projet (cmd: DotNet restauration) fonctionne bien! Si je me souviens bien, toutes les pré-versions ont travaillé avec le noyau .net.

+0

S'il vous plaît prendre note que MySQL.Data est LGPL .. distribution de la DLL avec votre application a des pièges éventuels de la licence ... –

+0

Je pensais que LGPL est open source, donc je ne dois pas noter toute substance de licence ... –

+1

Essentiellement quoi cela signifie que si vous distribuez un composant LGPL avec votre application, votre application est susceptible d'être ouverte. Donc, ce que vous devriez faire est que vous devriez faire le Mysql.Data.DLL dans le cadre de la pré-requis pour votre application et dans la documentation, vous devez fournir le lien pour le client à télécharger et à l'installer de manière appropriée. –

0

Malheureusement, lorsque j'ai essayé toutes les versions jusqu'à 6.9.9 cela n'a pas fonctionné. J'utilise les pré-versions depuis un moment et je n'ai trouvé aucun problème. Lorsque j'utilisais Core 1.1 cependant, j'ai utilisé la version préliminaire 7.x. Cette version a été supprimée récemment. Mais je suis tout à fait sûr que 8.0.8-dmr fonctionnera.