代码之家  ›  专栏  ›  技术社区  ›  monstertjie_za

转换netcore2.2->netstandard2:未定义runcommand属性

  •  0
  • monstertjie_za  · 技术社区  · 6 年前

    我正在转换我的 netcore2.2 应用程序收件人 netstandard2.0;net472 .

    这是我的主要项目 csproj 文件:

    <Project Sdk="Microsoft.NET.Sdk.Web">
    
      <PropertyGroup>
        <TargetFrameworks>netstandard2.0;net472</TargetFrameworks>
        <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
        <Platforms>AnyCPU;x64</Platforms>
        <StartupObject></StartupObject>
        <ApplicationIcon />
        <OutputType>WinExe</OutputType>
        <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
      </PropertyGroup>
    
      <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
        <PlatformTarget>AnyCPU</PlatformTarget>
      </PropertyGroup>
    
      <ItemGroup>
            <PackageReference Include="JWT" Version="5.3.1" />
            <PackageReference Include="Microsoft.AspNetCore" Version="2.2.0" />
            <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="2.2.0" />
            <PackageReference Include="Microsoft.AspNetCore.CookiePolicy" Version="2.2.0" />
            <PackageReference Include="Microsoft.AspNetCore.Hosting.WindowsServices" Version="2.2.0" />
            <PackageReference Include="Microsoft.AspNetCore.HttpsPolicy" Version="2.2.0" />
            <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.2.0" />
            <PackageReference Include="Microsoft.AspNetCore.Session" Version="2.2.0" />
            <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.2.0" />
            <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="2.2.0" />
            <PackageReference Include="Microsoft.Extensions.Logging.EventLog" Version="2.2.0" />
            <PackageReference Include="Microsoft.Extensions.Options" Version="2.2.0" />
        <PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="2.2.6" />
        <PackageReference Include="Microsoft.IdentityModel.Tokens" Version="5.5.0" />
        <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.2.3" />
        <PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="2.2.0" />
        <PackageReference Include="swashbuckle.aspnetcore" Version="4.0.1" />
      </ItemGroup>
    
      <ItemGroup>
        <ProjectReference Include="..\mvaasa.repository\mvaasa.repository.csproj" />
        <ProjectReference Include="..\mvaasa.services\mvaasa.services.csproj" />
      </ItemGroup>
    
    </Project>
    

    这是我的 Application Settings :

    enter image description here

    每当我尝试 Start Debugging (IIS Express) ,我得到以下错误弹出窗口:

    enter image description here

    如何设置?

    使现代化

    我试过设置 OutputType Exe 具体如下:

    <OutputType>Exe</OutputType>
    
    0 回复  |  直到 6 年前
        1
  •  1
  •   Martin Ullrich    6 年前

    .NET Standard不是将生成可运行程序集的目标框架。目标NET核心,以便能够在实际运行时上运行。

    瞄准 netstandard2.0 仅对库有用,对要运行的程序无效。

    当您以多个框架为目标时,还要确保传递了要在其上运行的预期运行时:

    dotnet run -f netcoreapp2.2