workloads visual tools studio problem net might microsoft installing instalar help for dotnet code and .net-core visual-studio-2017

.net-core - tools - visual studio code



Visual Studio 2017 no puede actualizar el paquete Microsoft.NETCore.App("Bloqueado por proyecto") (8)

La mejor recomendación es volver a crear sus proyectos nuevamente después de actualizar el SDK y el tiempo de ejecución y luego soltar el código y la configuración anteriores dentro de los nuevos proyectos. Aparte de eso, pasarás demasiado tiempo en ajustes inútiles y configuraciones desconocidas.

Tengo una aplicación central dotnet que se dirige a Microsoft.NETCore.App 1.1.2. Creé un proyecto de prueba para probarlo, pero al construir me di cuenta de esta advertencia:

Abro el NuGet Package Manager y veo que la advertencia es correcta, el proyecto que se está probando tiene una versión diferente de Microsoft.NETCore.App:

Mi problema es que Visual Studio no me permite actualizar esa versión, por lo que estoy confundido sobre cómo resolver este problema: Lo ideal sería simplemente hacer clic en el menú desplegable y seleccionar la versión correcta, pero Visual Studio afirma que no puede hacer esto debido a "restricciones adicionales en el proyecto o los paquetes.config". ¿Cómo se supone que debo actualizar ese paquete? ¿A qué "restricciones adicionales" se refiere Visual Studio?


Lo resolví simplemente: haciendo clic derecho en Proyecto (o ALT + Intro) -> Propiedades -> Aplicación -> Marco de destino (Elija .NET Core framework (en este caso 1.1))


Otra posible solución. En el archivo csproj , actualice el marco de destino a la versión a la que desea actualizar. Después de realizar el cambio, según los fragmentos a continuación, los paquetes se pueden actualizar a través del administrador de paquetes de solución NuGet.

Antes de:

<PropertyGroup> <TargetFramework>netcoreapp2.0</TargetFramework> </PropertyGroup>

Después:

<PropertyGroup> <TargetFramework>netcoreapp2.1</TargetFramework> </PropertyGroup>


Para mi agregando

<TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>

Hizo el truco

<PropertyGroup> <TargetFramework>netcoreapp2.1</TargetFramework> <GenerateAssemblyInfo>false</GenerateAssemblyInfo> <TargetLatestRuntimePatch>true</TargetLatestRuntimePatch> </PropertyGroup>


Tuve el mismo problema y creo que el problema es sobre el paquete.

<PackageReference Include="Microsoft.AspNetCore.App" />

El problema se resolvió después de que especifique la versión exactamente.

<PackageReference Include="Microsoft.AspNetCore.App" Version="2.2.0" />

Como sé, ese error se produce cuando el número de versión


Tuve un problema similar al intentar instalar el paquete Entityframework.Core en una aplicación web .NET Core 2. Para resolver el problema, forcé la instalación a través de Package Manager Console:

Install-Package Microsoft.NETCore.App -Version 2.0.5

(2.0.5 era la versión más reciente en ese momento)

Espero que sea útil. Paz.


EDITAR 2018 : solo siga las instrucciones para actualizar el paquete si realmente sabe lo que está haciendo. En la mayoría de los casos, nunca necesita actualizar este paquete, u otros paquetes marcados como "bloqueados por proyecto", manualmente. Una aplicación dependiente del marco utilizará el último tiempo de ejecución disponible y una aplicación autónoma realizará una compilación adicional utilizando una versión más reciente de este paquete automáticamente. (Hay algunos casos <TargetLatestRuntimePatch>true</…> en los que necesita actualizar este paquete en proyectos de prueba. En este caso, agregue <TargetLatestRuntimePatch>true</…> y vea este Q&A para otras opciones)

El paquete implícito hace referencia a que el Microsoft.NET.Sdk infiere no se puede actualizar a través de NuGet.

Si migró de project.json, el proyecto con la referencia 1.1.0 probablemente contenga

<RuntimeFrameworkVersion>1.1.0</RuntimeFrameworkVersion>

en el archivo csproj o en un elemento como este (si puede usar el administrador de paquetes previamente para configurar la versión):

<PackageReference Update="Microsoft.NETCore.App" Version="1.1.0" />

Elimine las entradas como las anteriores y todos los paquetes harán referencia a 1.1.2 (o lo que sea que el SDK instalado considere el más reciente) automáticamente. Alernativamente, establezca RuntimeFrameworkVersion en todos los proyectos.


Respuesta corta

Agregue una versión explícita a la referencia del paquete Microsoft.AspNetCore.App en su archivo .csproj.

Respuesta larga

Tuve un nuevo proyecto netcoreapp2.1. Lo siguiente estaba en el archivo .csproj. Tenga en cuenta que no había ninguna versión asociada con la referencia del paquete Microsoft.AspNetCore.App .

<ItemGroup> ... <PackageReference Include="Microsoft.AspNetCore.App" /> ... </ItemGroup>

Agregué una referencia explícita al paquete Microsoft.Extensions.Logging.Abstractions para resolver un desajuste de dependencia (error de compilación). Micorsoft.AspNetCore.App quería la versión 2.1.0 de esta dependencia, pero otro paquete quería la versión 2.1.1. Mi archivo .csproj ahora se veía así.

<ItemGroup> ... <PackageReference Include="Microsoft.AspNetCore.App" /> <PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="2.1.1" /> ... </ItemGroup>

Esto redujo el error de compilación a una advertencia sobre Micorsoft.AspNetCore.App requiere la versión 2.1.0 del paquete Microsoft.Extensions.Logging.Abstractions pero la versión 2.1.1, por supuesto, se resolvió.

El Administrador de paquetes bloqueó el Micorsoft.AspNetCore.App actualizar Micorsoft.AspNetCore.App a la versión 2.1.1 para corregir la advertencia, como lo menciona el OP.

Micorsoft.AspNetCore.App mi referencia del paquete Micorsoft.AspNetCore.App para usar explícitamente la versión 2.1.1 como esta.

<ItemGroup> ... <PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.1" /> <PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="2.1.1" /> ... </ItemGroup>

Esto solucionó la advertencia de compilación y desbloqueó todas las versiones de Microsoft.AspNetCore.App en el Administrador de paquetes. Incluso pude eliminar la referencia explícita a Microsoft.Extensions.Logging.Abstractions sin reintroducir el error original. El .csproj final se veía así sin problemas.

<ItemGroup> ... <PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.1" /> ... </ItemGroup>