Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

638
Vistas
.NET Core incluye carpeta en publicación

Tengo la siguiente estructura de carpetas para mi proyecto .NET Core 2.1:

¿Cómo puedo incluir la carpeta AppData y todas sus subcarpetas y archivos cuando publique la solución?

Intenté agregar esto al archivo .csproj pero no funcionó:

 <ItemGroup> <Folder Include="AppData\*" /> </ItemGroup>

EDITAR

También probé con esto y no funcionó:

 <ItemGroup> <Content Include="AppData\**" LinkBase="AppData" /> </ItemGroup>
over 4 years ago · Santiago Trujillo
5 Respuestas
Responde la pregunta

0

Puede colocar un archivo de marcador de posición en él (o usar sus archivos existentes). Luego agregue el archivo al proyecto y configure las propiedades del archivo: Copiar al directorio de salida: Copiar si es más reciente o Copiar siempre.

De otra manera: agregue un comando de paso posterior a la compilación, que crea el directorio.

over 4 years ago · Santiago Trujillo Denunciar

0

Agregando esto:

 <ItemGroup> <Content Include="AppData\**"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </Content> </ItemGroup>

a su archivo .csproj copiará la carpeta AppData si no está vacía. Para la carpeta AppData vacía, puede usar esta solución alternativa:

 <Target Name="CreateAppDataFolder" AfterTargets="AfterPublish"> <MakeDir Directories="$(PublishDir)AppData" Condition="!Exists('$(PublishDir)AppData')" /> </Target>

Esto creará la carpeta AppData después de la publicación si aún no se incluye en la salida. Lo que significa que esto creará la carpeta AppData solo si está vacía durante la publicación.

over 4 years ago · Santiago Trujillo Denunciar

0

Hay una solución simple y útil:

 <ItemGroup> <Content Include="AppData\**" CopyToPublishDirectory="PreserveNewest"/> </ItemGroup>

Puede encontrar más trucos aquí: https://docs.microsoft.com/en-us/dotnet/core/tools/project-json-to-csproj

over 4 years ago · Santiago Trujillo Denunciar

0

Ninguna de las soluciones anteriores funcionó para mí. Entonces, tomé el mismo enfoque que se tomó en "Plantilla de proyecto React" y agregué este código a mi archivo .csproj:

 <Target Name="PublishFrontend" AfterTargets="ComputeFilesToPublish"> <ItemGroup> <DistFiles Include="ClientApp\build\**" /> <ResolvedFileToPublish Include="@(DistFiles->'%(FullPath)')" Exclude="@(ResolvedFileToPublish)"> <RelativePath>%(DistFiles.Identity)</RelativePath> <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory> <ExcludeFromSingleFile>true</ExcludeFromSingleFile> </ResolvedFileToPublish> </ItemGroup> </Target>
over 4 years ago · Santiago Trujillo Denunciar

0

Primera solución, si se ejecuta dotnet build o dotnet Publish, se agregará la carpeta dentro del contenedor.

 <ItemGroup> <None Update="AppData\**" CopyToOutputDirectory="PreserveNewest" /> </ItemGroup>

Segunda solución, si ejecuta dotnet Publish agregará la carpeta dentro de bin.

 <ItemGroup> <Content Include="AppData\**" CopyToPublishDirectory="PreserveNewest"/> </ItemGroup>
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda