Вопрос по .net – Возможности SharePoint: как я могу использовать подстановочные знаки сборочных шаблонов?

7

Я думаю, что это, вероятно, будет общий вопрос загрузки сборок .NET, но в моем конкретном случае я хочу, чтобы мои функции SharePoint указывали на сборку, управление версиями которой связано с правильным номером редакции SVN.

Мои сборки теперь имеют версии, как указано вЭта статья, Я хотел бы иметь возможность просто настроить свои функции SharePoint для использования последней версии сборки, которая находится в GAC.

<Feature Id="7b5d86e8-17dc-4943-8f4e-ad1068daf4f9" 
         Title="My happy feature" 
         Scope="Web" 
         Version="1.0.0.0" 
         Hidden="FALSE" 
         DefaultResourceFile="core" 
         ReceiverAssembly="HappyFeature, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d772fbab82fe6896"
         ReceiverClass="HappyFeature.Receivers.HappyItemEventReceiver"
         xmlns="http://schemas.microsoft.com/sharepoint/">
</Feature>

Когда я делаю это, SharePoint, конечно, не может найти сборку, поскольку строгое имя не совпадает с версией 1.0.0.0, описанной здесь. Моя текущая версия в моей сборке - 1.0.4479.26553, поэтому я хотел бы, чтобы мои функции могли автоматически находить версии сборок с одинаковыми номерами. Как я могу это сделать?

Я несколько наивно пробовал что-то вроде этого:

ReceiverAssembly="HappyFeature, Version=1.0.*, Culture=neutral, PublicKeyToken=d772fbab82fe6896"

а также

ReceiverAssembly="HappyFeature, Version=1.0.*.*, Culture=neutral, PublicKeyToken=d772fbab82fe6896"

Но когда я пытаюсь развернуть свое решение как таковое, оно все еще ищет файл с версией 1.0.0.0:

Feature '7b5d86e8-17dc-4943-8f4e-ad1068daf4f9' could not be installed because the loading of event receiver assembly "HappyFeature, Version=1.0.., Culture=neutral, PublicKeyToken=d772fbab82fe6896" failed: System.IO.FileNotFoundException: Could not load file or assembly 'HappyFeature, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d772fbab82fe6896' or one of its dependencies. The system cannot find the file specified. File name: 'HappyFeature, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d772fbab82fe6896'

Каков правильный способ заставить фреймворк загружать мои сборки компонентов увеличенной версии?

РЕДАКТИРОВАТЬ: Итак, хотя я на самом деле не решил конкретный вопрос, который я задал, предложение Райана решило мою практическую проблему, заключающуюся в том, чтобы просто пометить мои сборки информацией, связанной с SVN, сохранив при этом возможность успешно загружать свои сборки в Мир FeatureReceiver SharePoint.

Ваш Ответ

2   ответа
1

издательская политика перенаправить на новую версию.

8

что вы могли бы сделать, это сохранить AssemblyVersion таким же (по крайней мере, пока его «совместимая основная версия»), но использовать ту же технику, чтобы поместить номер редакции SVN в свойство AssemblyFileVersion.

гда вам больше не придется обновлять файлы политики издателя.

KB556041 - Как использовать версию сборки и версию файла сборки

Suppose you are building a framework assembly for your project which is used by lot of developers while building the application assemblies. If you release new version of assembly very frequently ... and if assemblies are strong named, Developers will have to change the reference every time you release new assembly ... A better option in such closed group and volatile scenarios would be to fix the 'Assembly Version' and change only the 'Assembly File Version'.

SO - В чем различия между AssemblyVersion и AssemblyFileVersion

Error: User Rate Limit Exceeded Chris Farmer

Похожие вопросы