繁体   English   中英

TFS Build 2010 CodeActivity:无法在XAML中加载程序集

[英]TFS Build 2010 CodeActivity: Cannot Load Assembly in XAML

我试图将自定义的“活动代码”添加到TFS构建中。 我是在几个月前写的,让它可以在现已失效的测试环境中工作。 我试图将代码的使用恢复到新的测试平台上,并且遇到了问题。

当我打开build.xaml时,我收到了可怕的痛苦红色框,应该显示我的自定义活动,上面写着“由于XAML中的错误而无法加载程序集。”在ErrorList中,我还找到了“可能在程序集“ ReportingServicesDeploy”中找不到类型“ .DeploySSRSReportActivity”。”

我已经确认我的DLL已签入源代码管理,并且构建控制器正在指向它。

窥探原始XAML,我看到build.xaml文件将程序集定义为xmlns:rsd =“ clr-namespace:; assembly = ReportingServicesDeploy

我的自定义活动(以及VS发现错误的地方)所在的行是:

<rsd:DeploySSRSReportActivity CurrentBuild="[BuildDetail]" 
SourcesDirectory="[SourcesDirectory]" 
mtbwt:BuildTrackingParticipant.Importance="High" 
xmlns:mtvc="clr-namespace:Microsoft.TeamFoundation.VersionControl.Client;assembly=Microsoft.TeamFoundation.VersionControl.Client" 
xmlns:mtvco="clr- namespace:Microsoft.TeamFoundation.VersionControl.Common;assembly=Microsoft.TeamFoundation.VersionControl.Common" 
xmlns:ras="clr-namespace:ReportingServicesDeploy;assembly=ReportingServicesDeploy" 
xmlns:rsd="clr-namespace:;assembly=ReportingServicesDeploy" 
xmlns:sad="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation" 
xmlns:sad1="clr-namespace:System.Activities.Debugger;assembly=System.Activities" />

该DLL名为ReportingServicesDeploy.dll DLL中的名称空间是ReportingServicesDeploy ,活动类的名称是DeploySSRSReportActivity

链接在哪里失败,所以我遇到了这个错误?

当您尝试在计算机上直接编辑xaml时,不涉及tfs和sourcecontrol,控制器服务器上的位置是构建代理将在构建过程中寻找程序集的位置,而VS在打开构建定义时将在其中获取程序集的位置配置。

您的错误可能是由于使用了旧版本而引起的。

程序集必须可用于计算机上的Visual Studio-一种选择是将它们添加到GAC或发布到VS bin文件夹中。 之后启动Studio的新实例

要安装到GAC中,请从Visual Studio命令行运行此命令:gacutil / i“ Path \\ To \\ YourAssembly.dll”

要删除程序集,请从Visual Studio命令行运行以下命令:gacutil / u“ YourAssembly”

对于Studio程序集,我认为这是文件夹:Microsoft Visual Studio 10.0 \\ Common7 \\ IDE \\ PrivateAssemblies

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM