0

私はFody製織のFody.NameOfが機能しないという問題を経験しました。Fody Nameを含むプロジェクト.Over Weaverは含まれているソリューションに応じて動作します

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

新しいソリューションでは、特別な設定は行っていませんでした。 Fodyなどを有効にする

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

プロジェクトフォルダを差分の時は私のVisual Studioのバージョンは、私はプロジェクトファイルの違いを2012年

答えて

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> 

に動作していないプロジェクト:あなたはそれを追加処理する方法でpaketにバグがあると思われる場合

<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" /> 
+0

オヌルを、私は、Fodyに精通していませんよプロジェクトファイルのMSBuildターゲットをgithubリポジトリで問題を提出することを検討してください:https://github.com/fsprojects/Paket ありがとう! – smoothdeveloper

関連する問題