【问题标题】:TFS not weaving Fody assembliesTFS 不编织 Fody 组件
【发布时间】:2016-01-08 16:00:37
【问题描述】:

我正在尝试在我的项目中使用 Fody.PropertyChanged,因此我已将 [ImplementPropertyChanged] 添加到我的课程中。
在本地,在我的开发机器上一切正常。

但是,当反编译 TFS 生成的二进制文件时,我发现它们没有被编织:它们仍然具有 Fody 属性。

FodyWeavers.xml 有 veaver:

<Weavers>
  <PropertyChanged />
</Weavers>

我在哪里看,看什么,找出为什么我的组件没有被编织?

谢谢!

【问题讨论】:

  • 您是否在更新中添加了最终解决方案?建议您创建一个答案。这也将使论坛中的答案搜索更容易,并且对其他社区成员也有好处。
  • 你是对的。我希望有人能提出一个更好的答案,但是唉......

标签: tfs fody fody-propertychanged


【解决方案1】:

我已经设法以这种方式编织组件:

我已将packages\Fody.xx\的内容复制到Assemblies\Fody\

然后我修改了.csproj 以指向复制的.targets 文件(接近.csproj 的末尾):

<Import Project="$(SolutionDir)\Assemblies\Fody\build\dotnet\Fody.targets" Condition="Exists('$(SolutionDir)\Assemblies\Fody\build\dotnet\Fody.targets')" />
    <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
    <PropertyGroup>
        <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
    </PropertyGroup>
    <Error Condition="!Exists('$(SolutionDir)\Assemblies\Fody\build\dotnet\Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\Assemblies\Fody\build\dotnet\Fody.targets'))" />
</Target>

我怀疑 TFS 维护人员正在将 Nuget 包下载到另一个文件夹中(例如,所有项目的所有 Nuget 包只有一个副本),这意味着这种包无法正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-26
    • 1970-01-01
    • 2017-08-22
    • 2014-03-19
    相关资源
    最近更新 更多