2017-07-25 91 views
0

的缺失命名空间我有一个基于.NET的核心两个相同的应用程序。相同版本的框架

首先是在码头集装箱,我有1.0.4版本的.net核心。

二是在我的虚拟机Ubuntu 16.0.4中我也有.net核心的1.0.4版本。

问题是,当我想要在基于Docker容器的应用程序上使用声明时,找不到声明命名空间,但在Ubuntu虚拟机上,一切正常。

这是为什么? 这两个应用程序都使用相同的.net核心框架,所以为什么我无法在我的Docker容器上找到Claim命名空间?

这可能听起来不可思议,但是,我有3个解决方案,在第一解决索偿命名空间是可用的,但对其余doestn't

还有的csproj文件。

<Project Sdk="Microsoft.NET.Sdk.Web"> 
    <PropertyGroup> 
    <TargetFramework>netcoreapp1.1</TargetFramework> 
    </PropertyGroup> 
    <ItemGroup> 
    <Folder Include="wwwroot\" /> 
    </ItemGroup> 

    <ItemGroup> 
    <PackageReference Include="AutoMapper" Version="6.1.1" /> 
    <PackageReference Include="Microsoft.AspNetCore" Version="1.1.1" /> 
    <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="1.1.2" /> 
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.3" /> 
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.2" /> 
    </ItemGroup> 
    <ItemGroup> 
    <ProjectReference Include="..\Evento.Infrastructure\Evento.Infrastructure.csproj" /> 
    </ItemGroup> 
</Project> 

<Project Sdk="Microsoft.NET.Sdk"> 
    <ItemGroup> 
    <ProjectReference Include="..\Evento.Core\Evento.Core.csproj" /> 
    </ItemGroup> 
    <ItemGroup> 
    <PackageReference Include="AutoMapper" Version="6.0.2" /> 
    <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="1.1.2" /> 
    <PackageReference Include="NLog.Extensions.Logging " Version="1.0.0-*" /> 
    <PackageReference Include="NLog.Web.AspNetCore" Version="4.4.0" /> 
    <PackageReference Include="Microsoft.AspNetCore" Version="1.1.1" /> 
    </ItemGroup> 
    <PropertyGroup> 
    <TargetFramework>netstandard1.4</TargetFramework> 
    </PropertyGroup> 

</Project> 

<Project Sdk="Microsoft.NET.Sdk"> 
    <PropertyGroup> 
    <TargetFramework>netstandard1.4</TargetFramework> 
    </PropertyGroup> 
</Project> 

回答

0

我还没有与码头工人集装箱.NET工作。但我可以给你一个检查指针。运行虚拟机和Docker容器时,很多事情可能会有所不同。

您的虚拟机可能会有一个bash_profile,其中可能会在docker上丢失一些PATH设置。此外,您的码头集装箱将只运行主流程,而在您的虚拟机中,其他服务可能正在运行。这可能会或可能不会影响您的代码。