このトピックでは、.NET Frameworkで作成したActiveReportsのアプリを、.NETに移行する手順を説明します。
(参考).NET Framework から .NET 6 に移植する - .NET Core | Microsoft Learn
Visual Studio 2022で、16.0JのWinViewerサンプル(..\Samples\Desktop\WinViewer\C#\WinViewer.sln)を開きます。
[ツール]-[ActiveReports 18.0J ファイルコンバータ]をクリックし、プロジェクトを18.0Jに変換します。
[拡張機能]-[拡張機能の管理]をクリックし、[.NET Portability Analyzer]を検索してダウンロードします。
[ソリューションエクスプローラー]で、プロジェクトを右クリックし、[Analyze Assembly Portability]をクリックします。
分析結果をシステムに保存し、プロジェクトの移植性の詳細を分析します。
プロジェクトで[packages.config]を右クリックし、[packages.configをPackageReferenceに移行する]をクリックし、[OK]をクリックします。
プロジェクトを右クリックし、[プロジェクトのアンロード]を選択します。[ソリューションエクスプローラー]で[WinViewer]をダブルクリックして、WinViewer.csprojファイルを表示します。
WinViewer.csprojファイルの内容をコピーして削除します。すると、WinViewer.csprojファイルが空白で表示されます。コピーした内容をバックアップとして他のテキストファイルに保存します。
次のコードを空白のWinViewer.csprojファイルに追加して、プロジェクトのSDKのタイプに変更します。
プロジェクトはクラスライブラリプロジェクトであるため、OutputTypeは「library」です。また、自動生成されたアセンブリ属性を無効にする必要があります。
コード
.csproj |
コードのコピー
|
---|---|
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>library</OutputType> <TargetFramework>net6.0-windows</TargetFramework> <GenerateAssemblyInfo>false</GenerateAssemblyInfo> </PropertyGroup> </Project> |
コード
.csproj |
コードのコピー
|
---|---|
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>WinExe</OutputType> <TargetFramework>net6.0-windows</TargetFramework> <GenerateAssemblyInfo>false</GenerateAssemblyInfo> <ApplicationIcon /> <StartupObject /> </PropertyGroup> <ItemGroup> <PackageReference Include="MESCIUS.ActiveReports.Chart.Win.ja"> <Version>18.0.0-beta-2029</Version> </PackageReference> <PackageReference Include="MESCIUS.ActiveReports.Export.Excel.ja"> <Version>18.0.0-beta-2029</Version> </PackageReference> <PackageReference Include="MESCIUS.ActiveReports.Export.Html.ja"> <Version>18.0.0-beta-2029</Version> </PackageReference> <PackageReference Include="MESCIUS.ActiveReports.Export.Pdf.ja"> <Version>18.0.0-beta-2029</Version> </PackageReference> <PackageReference Include="MESCIUS.ActiveReports.Export.Word.ja"> <Version>18.0.0-beta-2029</Version> </PackageReference> <PackageReference Include="MESCIUS.ActiveReports.Export.Xml.ja"> <Version>18.0.0-beta-2029</Version> </PackageReference> <PackageReference Include="MESCIUS.ActiveReports.Viewer.Win.ja"> <Version>18.0.0-beta-2029</Version> </PackageReference> <PackageReference Include="MESCIUS.DataVisualization.Chart.ja"> <Version>0.4.53</Version> </PackageReference> <PackageReference Include="Microsoft.NETCore.Platforms"> <Version>1.1.0</Version> </PackageReference> <PackageReference Include="Microsoft.Win32.Primitives"> <Version>4.3.0</Version> </PackageReference> </ItemGroup> </Project> |
[ソリューションエクスプローラー]でプロジェクトを右クリックし、[プロジェクトの再読み込み]をクリックします。「コンパイル時アセンブリ」のバージョンエラーが表示される場合があります。これらのエラーを解決するには、ウィンドウで提案されているように手動でバージョンを修正します。
プロジェクトをビルドします。ビルドが成功し、プロジェクトが.NET 6/.NET 7/.NET 8プラットフォームに正常に移行されたことを確認します。