SDK
Plus récente (Latest)
False
Image de fond de la bannière
Guide du développeur
Dernière mise à jour 23 mars 2024

Migration des activités vers .NET 6

Cette page offre un aperçu de la façon de migrer vos activités .NET Framework personnalisées vers .NET 6 pour une utilisation dans des projets avec la compatibilité Windows disponible à partir de Studio 2021.10.6.

Nous utiliserons l'exemple d'activité MathSquareOfSum .NET Framework documenté sur la page Création d'activités avec code (Legacy) comme exemple pour une migration vers .NET 6 qui cible Windows tout en maintenant la compatibilité avec .NET Framework pour les projets Windows - Legacy.

Étape 1 : migrez le projet vers le nouveau format de style SDK et ajoutez le fichier net6.0-windows cible

Un projet qui utilise le format de projet .NET Framework doit être migré vers le nouveau format de style SDK. Pour plus d'informations, consultez la documentation Microsoft. Les références de paquets doivent être déclarées au format .csproj par opposition à packages.config.

  1. Dans l' Explorateur de solutions, cliquez avec le bouton droit sur le projet et sélectionnez Décharger le projet (Unload Project).
  2. Copiez les références et effacez tout ce qui se trouve dans le fichier .csproj .
  3. Mettez à jour manuellement le fichier .csproj vers le nouveau format.
  4. Ajoutez l'infrastructure cible net6.0-windows.
  5. Marquez les références d'origine comme net461 uniquement en ajoutant une condition.
  6. Ajoutez une nouvelle section de référence avec des conditions pour net6.0-windows. Vous devez déclarer les dépendances WWF suivantes pour .NET : UiPath.Workflow.Runtime, UiPath.Workflow, System.Activities.Core.Presentation, System.Activities.Metadata. Assurez-vous que toutes vos dépendances prennent en charge .NET. Vous devrez peut-être rechercher des versions de packages plus récentes ou des packages de remplacement.
  7. Dans l' Explorateur de solutions, cliquez avec le bouton droit sur le projet et sélectionnez Recharger le projet.

Le fichier doit ressembler à ceci.

<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop" ToolsVersion="Current">
  <PropertyGroup>
    <TargetFrameworks>net461;net6.0-windows</TargetFrameworks>
    <AssemblyName>MathSquareOfSum</AssemblyName>
    <RootNamespace>MathSquareOfSum</RootNamespace>
    <UseWpf>true</UseWpf>
    <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
  </PropertyGroup>
  <ItemGroup Condition=" '$(TargetFramework)' == 'net461' ">
    <Reference Include="PresentationCore" />
    <Reference Include="PresentationFramework" />
    <Reference Include="System" />
    <Reference Include="System.Activities" />
    <Reference Include="System.Activities.Core.Presentation" />
    <Reference Include="System.Activities.Presentation" />
    <Reference Include="System.ComponentModel.Composition" />
    <Reference Include="System.Core" />
    <Reference Include="System.Xaml" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="System.Data" />
    <Reference Include="System.Net.Http" />
    <Reference Include="System.Xml" />
    <Reference Include="WindowsBase" />
  </ItemGroup>
  <ItemGroup Condition=" '$(TargetFramework)' == 'net6.0-windows' ">
    <PackageReference Include="UiPath.Workflow.Runtime" Version="6.0.0-20220401-03" PrivateAssets="All" />
    <PackageReference Include="UiPath.Workflow" Version="6.0.0-20220401-03" PrivateAssets="All" />
    <PackageReference Include="System.Activities.Core.Presentation" Version="6.0.0-20220318.2" PrivateAssets="All" />
    <PackageReference Include="System.Activities.Metadata" Version="6.0.0-20220318.2" PrivateAssets="All" />
  </ItemGroup>
</Project><Project Sdk="Microsoft.NET.Sdk.WindowsDesktop" ToolsVersion="Current">
  <PropertyGroup>
    <TargetFrameworks>net461;net6.0-windows</TargetFrameworks>
    <AssemblyName>MathSquareOfSum</AssemblyName>
    <RootNamespace>MathSquareOfSum</RootNamespace>
    <UseWpf>true</UseWpf>
    <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
  </PropertyGroup>
  <ItemGroup Condition=" '$(TargetFramework)' == 'net461' ">
    <Reference Include="PresentationCore" />
    <Reference Include="PresentationFramework" />
    <Reference Include="System" />
    <Reference Include="System.Activities" />
    <Reference Include="System.Activities.Core.Presentation" />
    <Reference Include="System.Activities.Presentation" />
    <Reference Include="System.ComponentModel.Composition" />
    <Reference Include="System.Core" />
    <Reference Include="System.Xaml" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="System.Data" />
    <Reference Include="System.Net.Http" />
    <Reference Include="System.Xml" />
    <Reference Include="WindowsBase" />
  </ItemGroup>
  <ItemGroup Condition=" '$(TargetFramework)' == 'net6.0-windows' ">
    <PackageReference Include="UiPath.Workflow.Runtime" Version="6.0.0-20220401-03" PrivateAssets="All" />
    <PackageReference Include="UiPath.Workflow" Version="6.0.0-20220401-03" PrivateAssets="All" />
    <PackageReference Include="System.Activities.Core.Presentation" Version="6.0.0-20220318.2" PrivateAssets="All" />
    <PackageReference Include="System.Activities.Metadata" Version="6.0.0-20220318.2" PrivateAssets="All" />
  </ItemGroup>
</Project>
Vérifiez le code dans le fichier .cs pour chaque cible pour les références manquantes et mettez à jour les références dans le fichier .csproj si nécessaire.


Attention : n'incluez pas les packages référencés dans le package NuGet et n'ajoutez pas de dépendances dans les métadonnées du package. L'inclusion des packages référencés entraîne l'échec de l'installation du package dans Studio.

Étape 2 : Créer la solution

Assurez-vous de tester le projet pour les erreurs avant d'essayer de le générer.

Dans le menu Générer (Build), sélectionnez Générer la solution ( Build Solution). Les bibliothèques DLL sont générées et enregistrées à l'emplacement suivant dans des dossiers distincts pour chaque infrastructure cible : %UserProfile%\source\repos\MathSquareOfSum\MathSquareOfSum\bin\Debug

Étape 3 : Créer un paquet NuGet

Créez un package NuGet à l'aide de NuGet Package Explorer, comme décrit dans Création d'activités avec du code (hérité).

  1. Lancez NuGet Package Explorer et cliquez sur Créer un nouveau package (Create a new package) (Ctrl + N). Une fenêtre divisée s'affiche, affichant les Métadonnées du package ( Package metadata) et le Contenu du package ( Package contents). Nous devons ajouter toutes les dépendances dans la dernière section.
  2. Cliquez avec le bouton droit dans la section Contenu du package ( Package contents ). Un menu contextuel s'affiche.
  3. Cliquez sur Ajouter un dossier lib (Add lib folder). Notez qu'un nouvel élément lib (lib) est créé dans la section Contenu du package (Package contents).
  4. Cliquez deux fois avec le bouton droit sur lib et sélectionnez comme suit :
    • Ajouter un dossier .NET Framework > v4.6.1
    • Ajouter un dossier .NET > v6.0-windows
  5. Cliquez avec le bouton droit sur chacun des dossiers ajoutés à l'étape précédente et sélectionnez Ajouter un fichier existant ( Add Existing File ) pour charger les fichiers d'assembly externe (.dll) requis pour chacun. Les fichiers sont situés dans un sous-dossier avec le nom de l'infrastructure situé dans le dossier \bin\Debug :
    • net461 - MathSquareOfSum.dll
    • net6.0-windows - MathSquareOfSum.dll
  6. Renommez le dossier net6.0-windows en net6.0-windows7.0.
  7. Une fois le fichier sélectionné, accédez au menu Modifier (Edit) et sélectionnez Modifier les métadonnées ( Edit Metadata). Le panneau de gauche est désormais équipé de champs de métadonnées modifiables.
  8. Modifiez les champs de métadonnées selon vos besoins.
  9. Sélectionnez Modifier les dépendances (Edit dependencies), puis ajoutez les infrastructures cibles suivantes : net461 et net6.0-windows7.0.


  10. Cliquez sur la coche verte dans le coin supérieur gauche pour enregistrer toutes les modifications.
  11. Sélectionnez Fichier > Enregistrer sous pour enregistrer le nouveau fichier.

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.