Podczas importowania rozwiązania w usłudze Microsoft Dynamics 365 nie wystąpił błąd w postaci ciągu wejściowego

Ten artykuł zawiera rozwiązanie błędu Ciąg wejściowy nie miał poprawnego formatu , który może wystąpić podczas próby zaimportowania rozwiązania w usłudze Microsoft Dynamics 365.

Dotyczy: Microsoft Dynamics 365
Oryginalny numer KB: 4464324

Symptomy

Podczas próby zaimportowania rozwiązania w usłudze Microsoft Dynamics 365 importowanie rozwiązania kończy się niepowodzeniem z następującym komunikatem:

Importowanie rozwiązania: [nazwa rozwiązania] nie powiodła się

Jeśli wyświetlisz szczegóły w dołączonej siatce i wybierzesz pozycję Pobierz plik dziennika, zostaną wyświetlone szczegóły, takie jak:

Ciąg wejściowy nie był w prawidłowym formacie zgłaszanym przez aplikację podczas przetwarzania niestandardowego zestawu (wtyczki).
0x80048033 ciąg wejściowy nie był w poprawnym formacie".

Uwzględniono również następujące szczegóły błędu:

Microsoft.Crm.Tools.ImportExportPublish.ImportSolutionException: Importowanie zestawów wtyczek: NIEPOWODZENIE. Błąd: Wtyczka: <NAZWA> ZESTAWU, Version=0.0.0.0, Culture=neutral, PublicKeyToken=[token] spowodował wyjątek. --->
System.FormatException: ciąg wejściowy nie był w poprawnym formacie.
at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args)
w: System.String.Format(IFormatProvider provider, String format, Object[] args)
w: 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)
w: Microsoft.Crm.ObjectModel.PluginAssemblyServiceInternal'1.Update(IBusinessEntity entity, ExecutionContext context)
w: Microsoft.Crm.Tools.ImportExportPublish.ImportPluginAssemblyHandler.ImportItem()
--- koniec --- śledzenia stosu wyjątków wewnętrznych
w: Microsoft.Crm.Tools.ImportExportPublish.ImportPluginAssemblyHandler.ImportItem()
w: 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)
w: Microsoft.Crm.Tools.ImportExportPublish.RootImportHandler.RunImport(String[] ImportEntities)
at Microsoft.Crm.Tools.ImportExportPublish.ImportXml.RunImport(String[] ImportEntities)
w: Microsoft.Crm.Tools.ImportExportPublish.ImportXml.RunImport()
w: 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)

Przyczyna

Ten błąd może wystąpić, jeśli zestaw wtyczki używa nowszej wersji .NET Framework, takiej jak 4.6.1 i 4.6.2. Obecnie usługa Microsoft Dynamics 365 (online) obsługuje tylko zestawy SDK platformy .NET oparte na .NET Framework 4.5.2.

Rozwiązanie

Zestaw, którego dotyczy problem, musi zostać skompilowany za pomocą .NET Framework 4.5.2:

  1. Otwórz program Visual Studio.
  2. Kliknij prawym przyciskiem myszy projekt zawierający zestaw, którego dotyczy problem, i wybierz pozycję Właściwości.
  3. Zmień platformę Target na .NET Framework 4.5.2.