Microsoft Dynamics 365에서 솔루션을 가져올 때 입력 문자열이 올바른 형식 오류가 발생했습니다.
이 문서에서는 Microsoft Dynamics 365에서 솔루션을 가져오려고 할 때 입력 문자열이 올바른 형식이 아닌 오류에 대한 해결 방법을 제공합니다.
적용 대상: Microsoft Dynamics 365
원래 KB 번호: 4464324
증상
Microsoft Dynamics 365에서 솔루션을 가져오려고 하면 다음 메시지와 함께 솔루션 가져오기가 실패합니다.
솔루션 가져오기: [솔루션 이름]이 실패했습니다.
포함된 표에서 세부 정보를 보고 로그 파일 다운로드를 선택하면 다음과 같은 세부 정보가 표시됩니다.
사용자 지정(플러그 인) 어셈블리를 처리할 때 입력 문자열이 애플리케이션에서 throw한 올바른 형식이 아닙니다.
0x80048033 입력 문자열이 올바른 형식이 아닙니다."
다음 오류 세부 정보도 포함됩니다.
Microsoft.Crm.Tools.ImportExportPublish.ImportSolutionException: 플러그 인 어셈블리 가져오기: 실패입니다. 오류: 플러그 인: <ASSEMBLY NAME>, Version=0.0.0.0, Culture=neutral, PublicKeyToken=[token]에서 예외가 발생했습니다. --->
System.FormatException: 입력 문자열이 올바른 형식이 아닙니다.
at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args)
at System.String.Format(IFormatProvider provider, String format, Object[] args)
at Microsoft.Crm.ObjectModel.TargetFrameworkVersionValidator.ValidateInternal()
at Microsoft.Crm.ObjectModel.PluginAssemblyServiceInternal'1.ValidateAssemblyMetadata(ExecutionContext context, IBusinessEntity pluginAssembly, CrmPluginAssemblyMetadata assemblyMetadata)
at Microsoft.Crm.ObjectModel.PluginAssemblyServiceInternal'1.VerifyRegistrationAbility(IBusinessEntity pluginAssembly, Boolean createCall, ExecutionContext context)
at Microsoft.Crm.ObjectModel.SdkEntityServiceBase.UpdateInternal(IBusinessEntity entity, ExecutionContext context, Boolean verifyAction)
at Microsoft.Crm.ObjectModel.PluginAssemblyServiceInternal'1.Update(IBusinessEntity entity, ExecutionContext context)
at Microsoft.Crm.Tools.ImportExportPublish.ImportPluginAssemblyHandler.ImportItem()
--- 내부 예외 스택 추적 끝 ---
at Microsoft.Crm.Tools.ImportExportPublish.ImportPluginAssemblyHandler.ImportItem()
at Microsoft.Crm.Tools.ImportExportPublish.ImportHandler.Import()
at Microsoft.Crm.Tools.ImportExportPublish.RootImportHandler.ImportAndUpdateProgress(ImportHandler ih)
at Microsoft.Crm.Tools.ImportExportPublish.RootImportHandler.ProcessNonMetadataHandlers(String[] ImportEntities, ImportHandler& ihForCurrentPath, CounterList listCounters)
at Microsoft.Crm.Tools.ImportExportPublish.RootImportHandler.RunImport(String[] ImportEntities)
at Microsoft.Crm.Tools.ImportExportPublish.ImportXml.RunImport(String[] ImportEntities)
at Microsoft.Crm.Tools.ImportExportPublish.ImportXml.RunImport()
at Microsoft.Crm.Tools.ImportExportPublish.ImportXml.RunImport(Boolean withSolutionManifest)
at Microsoft.Crm.WebServices.ImportXmlService.ImportSolutionSkipCapable(Boolean overwriteUnmanagedCustomizations, Boolean publishWorkflows, Byte[] customizationFile, Guid importJobId, Boolean convertToManaged, Boolean skipProductUpdateDependencies, Boolean holdingSolution, ExecutionContext context)
원인
이 오류는 플러그 인 어셈블리가 4.6.1 및 4.6.2와 같은 최신 버전의 .NET Framework를 사용하는 경우에 발생할 수 있습니다. 현재 Microsoft Dynamics 365(온라인)는 .NET Framework 4.5.2에서 빌드된 .NET SDK 어셈블리만 지원합니다.
해결
영향을 받는 어셈블리는 .NET Framework 4.5.2를 사용하여 컴파일해야 합니다.
- Visual Studio를 엽니다.
- 영향을 받는 어셈블리가 포함된 프로젝트를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.
- 대상 프레임워크를 .NET Framework 4.5.2로 변경합니다.