4

BeforeBuild を実行する必要がある .csproj ファイルで定義された次のインライン タスクがあります。

<UsingTask TaskName="VersioningTask" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
<ParameterGroup>
    <FileName ParameterType="System.String" Required="true" />
    <XmlFileName ParameterType="System.String" Required="true" />
</ParameterGroup>
<Task>
    <Reference Include="System.Xml.dll" />
    <Reference Include="System.Xml.Linq.dll"/>
    <Using Namespace="System" />
    <Using Namespace="System.IO" />
    <Using Namespace="System.Linq" />
    <Using Namespace="System.Text" />
    <Using Namespace="System.Text.RegularExpressions" />
    <Using Namespace="System.Xml.Linq" />
    <Code Type="Fragment" Language="cs"><![CDATA[
        var xDoc = XDocument.Load(XmlFileName);
        //...

VS2012 からプロジェクトをビルドすると、次のエラーが発生します。

参照 "System.Xml.dll" が見つかりませんでした。コードでこの参照が必要な場合、コンパイル エラーが発生する可能性があります。

参照 "System.Xml.Linq.dll" が見つかりませんでした。コードでこの参照が必要な場合、コンパイル エラーが発生する可能性があります。

XML と 2 つの参照を削除すると、ビルドは成功します。DLL (%windir%/assembly) へのフル パスを使用しようとしましたが、成功しませんでした。

ここで何が間違っているかについてのアイデアは高く評価されます。

4

2 に答える 2

-1

インライン タスクを使用する代わりに通常のタスクを使用することで解決しました。

于 2013-04-26T20:12:52.853 に答える