安装项目未能正确注册程序集到全局程序集缓存(GAC)中。

5
我已经按照这篇文章中的说明为IIS 7创建了一个自定义的重写提供程序:Developing a Custom Rewrite Provider for URL Rewrite Module。为了简化部署,我创建了一个VS2010设置项目,并将其配置为将我的程序集部署到GAC。当我运行安装程序时,它成功完成,并且似乎已在GAC中注册程序集(我已使用gacutil.exe /l进行验证)。但是,当我去IIS管理器注册新的重写提供程序时,它没有显示在可用提供程序列表中。我还尝试使用gacutil.exe /if手动安装程序集。这确实有效,并使程序集在IIS管理器的可用提供程序列表中可见。我是否在设置项目中遗漏了某种配置?

2
你是如何配置项目以在GAC中安装程序集的? - rmrrm
1
通过添加全局程序集缓存文件夹并将我的IIS Rewrite Provider项目的输出添加到其中 - Arnold Zokas
1
就广告宣传的工作方式而言,一切看起来都很正确,您是否考虑过自定义操作并直接调用gacutil呢? - Shaun Wilde
强名称可能是一个问题,你确定已经解决了吗? - amod
@ShaunWilde 我不能直接调用 gacutil。我使用安装程序项目的原因是为了避免依赖于 gacutil,这样我的自定义提供程序就可以安装在没有 SDK 安装的服务器上。 - Arnold Zokas
@amod0017 强名称不是问题。程序集已签名。使用 gacutil 进行手动安装可以正常工作。 - Arnold Zokas
1个回答

2

我也遇到了这个问题(提供程序没有显示),这是在手动将我的提供程序GAC后出现的。在我的情况下,将项目中的框架版本从4.0降低到3.5就解决了这个问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接