【问题标题】:Multiple target frameworks causes CS1503多目标框架导致 CS1503
【发布时间】:2018-01-20 16:21:32
【问题描述】:

当我尝试使用这个 csproj 构建时,我会得到多个 CS1503

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

  <PropertyGroup>
    <TargetFrameworks>netcoreapp2.0;net471</TargetFrameworks>
    <RootNamespace>Dtl</RootNamespace>
    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="System.Data.Common" Version="4.3.0" />
  </ItemGroup>

</Project>

例如

string[] lines = pair.Key.Split(Environment.NewLine);

产量:

CS1503 参数 1:无法从 'string' 转换为 'char'

我试过 net461 也没有运气。如果我恢复为 netcoreapp2.0,它工作正常。

【问题讨论】:

    标签: c# .net .net-core overloading


    【解决方案1】:

    .NET framework API 没有将字符串作为唯一参数的String.Split 方法。 .NET Core API 确实有这样的方法。如果您想支持.NET framework,那么您只能使用该 API 中存在的方法。

    pair.Key.Split(new[] { Environment.NewLine }, StringSplitOptions.None);
    

    参考:

    .NET Core String.Split

    .NET Framework String.Split

    【讨论】:

      猜你喜欢
      • 2021-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多