3

全部,

我正在处理一个 SharePoint 项目,但这本身并不是一个特定于 SharePoint 的问题。我有一个已部署到 SharePoint 场的程序集,我想验证我的“最新版本”是否位于 GAC 中,或者是否存在昨天晚些时候的旧版本。这是一个测试场,所以是的,我们一直在更新版本。

无需做任何疯狂的事情,例如每次编译时更改程序集版本本身*,是否有一些程序集属性我可以检查(或在编译时设置)?

*我应该澄清一下,在 SharePoint 项目中,我们在多个位置(包括 XML 文件)对程序集的全名进行硬编码,因此更改程序集版本比您想象的要少。

4

3 回答 3

5

程序集版本是为此的预期机制,但您可以通过将 GAC 程序集的 MD5 哈希与最新版本的 MD5 进行比较来滚动自己的机制。

于 2008-10-20T15:38:25.073 回答
4

您可以使用 AssemblyFileVersion 属性。从文档中,AssemblyFileVersion

指示编译器为 Win32 文件版本资源使用特定版本号。Win32 文件版本不需要与程序集的版本号相同。

于 2008-10-20T15:47:53.043 回答
3

您可能还想查看程序集绑定重定向。基本上,您可以在 web.config 或 app.config 中放置一些设置来告诉您的应用程序(在本例中为 SharePoint)使用特定的版本号:

更多信息: http: //msdn.microsoft.com/en-us/library/7wd6ex19 (VS.71).aspx

它可能不是这种情况的解决方案,但它可能在未来证明是有用的。在处理自定义 SharePoint 解决方案时,我发现它特别有用。

于 2008-10-20T16:08:22.393 回答