0

ある解決策では、私の場合は Fody.NameOf の Fody ウィービングが機能しないという問題が発生します。

私は新しいソリューションを作成し、問題のプロジェクトをコピーしました。このソリューションでは、製織が機能します!

新しいソリューションでは、Fody などを有効にするなど、特別なことは何も構成しませんでした。

「元の」ソリューションでは、最近 NuGet から Paket への移行を行いましたが、これは問題に関係している可能性があります。

私のVisual Studioのバージョンは2012です。

4

1 に答える 1

0

プロジェクトフォルダを差分すると、プロジェクトファイルに違いが見つかりました

このブロック

  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.6.1'">
      <PropertyGroup>
        <__paket__Fody_targets>Fody</__paket__Fody_targets>
      </PropertyGroup>
    </When>
  </Choose>

別に配置されています。調整後、両方のソリューションで機能しました。

私は MSBuild の専門家ではありませんが、動作していないバージョンではコンパイル前にfody が実行されるように思われるため、結果はおそらく上書きされます。

作業プロジェクト:

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\Release\</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <ItemGroup>
    <Content Include="FodyWeavers.xml" />
    <Reference Include="System" />
    <Reference Include="System.Core" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="System.Data" />
    <Reference Include="System.Xml" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="NameOfPaket.cs" />
    <Compile Include="Properties\AssemblyInfo.cs" />
  </ItemGroup>
  <ItemGroup>
    <None Include="paket.references" />
  </ItemGroup>
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.6.1'">
      <PropertyGroup>
        <__paket__Fody_targets>Fody</__paket__Fody_targets>
      </PropertyGroup>
    </When>
  </Choose>

動作しないプロジェクト:

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\Release\</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <Choose>
    <When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And $(TargetFrameworkVersion) == 'v4.6.1'">
      <PropertyGroup>
        <__paket__Fody_targets>Fody</__paket__Fody_targets>
      </PropertyGroup>
    </When>
  </Choose>
  <ItemGroup>
    <Content Include="FodyWeavers.xml" />
    <Reference Include="System" />
    <Reference Include="System.Core" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="System.Data" />
    <Reference Include="System.Xml" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="NameOfPaket.cs" />
    <Compile Include="Properties\AssemblyInfo.cs" />
  </ItemGroup>
  <ItemGroup>
    <None Include="paket.references" />
  </ItemGroup>
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
于 2016-03-31T10:48:16.087 に答える