Yi.Abp.Web.csproj 4.17 KB
<Project Sdk="Microsoft.NET.Sdk.Web">
	<PropertyGroup>
	  <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
	  <DockerfileContext>..\..</DockerfileContext>
	</PropertyGroup>
	<Import Project="..\..\common.props" />



  <ItemGroup>
    <!-- 与 FoodLabeling.Application 中 Excel 导出一致;显式引用避免部分发布/拷贝场景下漏带 ClosedXML.dll -->
    <PackageReference Include="ClosedXML" Version="0.102.3" />
    <PackageReference Include="Hangfire.MemoryStorage" Version="1.8.1.1" />
    <PackageReference Include="Hangfire.Redis.StackExchange" Version="1.9.4" />
    <!-- 解决 docker 构建冲突问题,冲突版本信息如下 -->
    <!-- Yi.Abp.Web -> Hangfire.Redis.StackExchange 1.9.4 -> Hangfire.Core (>= 1.8.7)  -->
    <!-- Yi.Abp.Web -> Yi.Abp.Application -> Yi.Framework.Rbac.Application -> Volo.Abp.BackgroundJobs.HangFire 0.4.1 -> Volo.Abp.HangFire 0.4.1 -> Hangfire.AspNetCore 1.6.19 -> Hangfire.Core (= 1.6.19). -->
    <PackageReference Include="Hangfire.Core" Version="1.8.14" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="8.0.3" />
    <PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="8.0.3" />
    <PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.19.6" />
    <PackageReference Include="Serilog.AspNetCore" Version="8.0.1" />
    <PackageReference Include="Serilog.Sinks.Async" Version="1.5.0" />
    <PackageReference Include="Volo.Abp.AspNetCore.Authentication.JwtBearer" Version="$(AbpVersion)" />
    <PackageReference Include="Volo.Abp.AspNetCore.MultiTenancy" Version="$(AbpVersion)" />
    <PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="$(AbpVersion)" />
    <PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="$(AbpVersion)" />
    <PackageReference Include="Volo.Abp.Autofac" Version="$(AbpVersion)" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\..\framework\Yi.Framework.AspNetCore.Authentication.OAuth\Yi.Framework.AspNetCore.Authentication.OAuth.csproj" />
    <ProjectReference Include="..\..\framework\Yi.Framework.AspNetCore\Yi.Framework.AspNetCore.csproj" />
    <ProjectReference Include="..\..\framework\Yi.Framework.BackgroundWorkers.Hangfire\Yi.Framework.BackgroundWorkers.Hangfire.csproj" />
    <ProjectReference Include="..\..\module\antis-erp\Antis.Erp.Application\Antis.Erp.Application.csproj" />
    <ProjectReference Include="..\..\module\food-labeling-us\FoodLabeling.Application\FoodLabeling.Application.csproj" />
    <ProjectReference Include="..\..\module\food-labeling\FoodLabeling.Th.Application\FoodLabeling.Th.Application.csproj" />
    <ProjectReference Include="..\Yi.Abp.Application\Yi.Abp.Application.csproj" />
    <ProjectReference Include="..\Yi.Abp.SqlSugarCore\Yi.Abp.SqlSugarCore.csproj" />
  </ItemGroup>

  <ItemGroup>
    <Content Update="appsettings.json">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
    <Content Update="wwwroot\File\c4e579ee-9e5d-8a60-5540-3a138a0fb467">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
    <Content Update="wwwroot\icon\**">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
    <Content Update="wwwroot\plugins\news\config.json">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
    <Content Update="wwwroot\plugins\news\skprompt.txt">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
    <Content Update="wwwroot\stock\**">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
  </ItemGroup>

  <ItemGroup>
    <None Update="ip2region.db">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
  </ItemGroup>

  <!-- 避免「只拷业务 dll 覆盖线上」导致缺 ClosedXML;完整 dotnet publish 应始终包含该文件 -->
  <Target Name="VerifyClosedXmlInPublishOutput" AfterTargets="Publish">
    <Error
      Condition="!Exists('$(PublishDir)ClosedXML.dll')"
      Text="发布目录缺少 ClosedXML.dll。请使用 dotnet publish Yi.Abp.Web 的完整输出(含全部依赖 dll 与 Yi.Abp.Web.deps.json)部署到服务器,勿仅用 bin 内部分文件做覆盖。" />
  </Target>

</Project>