繁体   English   中英

ASP.net核心应用程序定位框架4.6无法解析.NETFramework 4.6版

[英]ASP.net core application targetting framework 4.6 unable to resolve for .NETFramework version 4.6

我创建了一个以完整的.net 4.6框架为目标的.net核心应用程序,以便使用System.DirectoryServices连接到Active Directory。 我更改了csproj文件,如下所示,将net46添加到目标框架并添加system.directoryservices。

<PropertyGroup>
  <!--<TargetFramework>netcoreapp1.1</TargetFramework>-->
  <TargetFramework>net46</TargetFramework>
  <PackageTargetFallback>portable-net45+win8</PackageTargetFallback>
  <UserSecretsId>fdd24e9b-cd56-499e-9c1b-f8ef2b24ba09</UserSecretsId>
</PropertyGroup>

<ItemGroup>
  <Folder Include="wwwroot\" />
</ItemGroup>
<ItemGroup>
  <PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.0.0" />
  <PackageReference Include="Microsoft.AspNetCore" Version="1.1.1" />
  <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.2" />
  <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.1" />
  <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="1.1.1" />
  <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.1" />
  <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.Design" Version="1.1.1" />
  <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.1" />
  <PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="1.1.0" />
  <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="1.1.0" />
  <PackageReference Include="System.DirectoryServices" Version="4.0.0" />
</ItemGroup>
<ItemGroup>
  <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.0" />
</ItemGroup>

所有这些都按预期工作,我可以重新加载项目,并完全使用目录服务。 我现在尝试以与添加System.DirectoryServices相同的方式添加System.DirectoryServices.AccountManagement,如下所示:

  <PackageReference Include="System.DirectoryServices" Version="4.0.0" />
  <PackageReference Include="System.DirectoryServices.AccountManagement" Version="4.0.0" />

但是,当我尝试重新加载项目时,出现以下错误:

无法解决错误

该错误对我来说意味着.net 4.6框架不包含AccountManagement程序包,但在4.0以上的版本中都应该可用。

我是asp .net内核开发的新手,所以我认为我缺少一些琐碎的东西,因此对此问题的任何解释都很好。

非常感谢

您的项目文件必须看起来像这样,

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>net46</TargetFramework>
    <RuntimeIdentifier>win7-x86</RuntimeIdentifier>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.0.0" />
    <PackageReference Include="Microsoft.AspNetCore" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.2" />
    <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.1" />
    <PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="1.1.0" />
  </ItemGroup>
  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.0" />
  </ItemGroup>
  <ItemGroup>
    <Reference Include="System.DirectoryServices.AccountManagement" />
  </ItemGroup>

</Project>

最后一个是普通参考,不是软件包参考。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM