У меня странная проблема с нашей Dynamics CRM 4.0 (мы используем ее для разработки настроек).
При попытке экспортировать ярлыки (Настройки -> Настройки -> Экспорт ярлыков для перевода) система показываетэта ошибка (Tracing + DevErrors включены, все показывают то же самое, а также просмотра событий на самом сервере):
Error Description:
An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Error Details:
Exception of type 'System.Web.HttpUnhandledException' was thrown.
Full Stack:
[ArgumentException: An item with the same key has already been added.]
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at Microsoft.Crm.Metadata.LabelCollection.Add(Label label)
at Microsoft.Crm.ObjectModel.OrganizationUIService.GetSectionTabAndFieldLabels(IBusinessEntity entity, ILabelLoader labelLoader, ExecutionContext context, Dictionary`2 labels)
at Microsoft.Crm.ObjectModel.OrganizationUIService.RetrieveAllFormLabelsWithAllLanguages(Int32 objectTypeCode, ExecutionContext context)
at Microsoft.Crm.Metadata.OrganizationUIHelper.RetrieveAllFormLabelsWithAllLanguages(Int32 objectTypeCode, ExecutionContext context)
at Microsoft.Crm.Tools.ImportExportPublish.FormXmlHandler.GetLocalizedLabelStringsCollection(Int32 baseLanguageCode, List`1 provisionedLanguages, Dictionary`2 locLabelCollection)
at Microsoft.Crm.Tools.ImportExportPublish.RootTranslationExportHandler.ExportLocalizedLabelStrings(Int32 baseLanguageCode, List`1 provisionedLanguages)
at Microsoft.Crm.Tools.ImportExportPublish.RootTranslationExportHandler.RunExportTranslations(Int32 baseLanguageCode, List`1 provisionedLanguages)
Очевидно, ни у кого в мире никогда не было этой проблемы (ягуглил 2 дня) ...
То, что я пробовал: Я проверил MetadataSchema.LocalizedLabels
на любую странность, я попытался соединить его с Attribute
и Entity
, чтобыпроверка на дублированные записи (Исключение жалуется на дубликат ключа , так что ...), почти заставил LinqPad взорваться от огромного количества запросов, которые я пробовал и отказался ...
Если оно того стоитчто угодно, последний накопительный пакет должен быть на сервере.