知識マップ: .NET Frameworkから.NETへの移行前チェックリスト
記事「.NET Frameworkから.NETへの移行前チェックリスト」の主張を、概念と関係(エッジ)に分解した知識グラフの全体です。各関係には根拠・確認日・確度が付いています。
.NET Frameworkから.NETへの移行は実装より前の棚卸しが要で、packages.configの後継であるPackageReferenceやSDKスタイルプロジェクトへの変換は移行より先に済ませておくべき作業とされる。AppDomainの新規作成や.NET Remoting、COM+、Workflow Foundationは.NETと両立せず、BinaryFormatterも状況によっては両立しない。WCFはクライアントとサーバーで事情が異なり、サーバー側はCoreWCFかgRPCへの再設計が必要になる。ASP.NET FrameworkはASP.NET Coreの後継だがWeb Formsは同じapp modelではなく、EF6からEF Coreへの移行はruntimeの移行と切り離して後回しにするのが安全とされる。WinForms/WPFは移行できてもWindows専用のままで、Windows専用API依存はWindows互換パックで軽減できる。
flowchart LR
accTitle: .NET Frameworkから.NETへの移行前チェックリストの知識マップ
accDescr: .NET Frameworkから.NETへ移行する前に整理すべき依存関係の形式・非対応技術・WCFやEF6の扱い・Windows専用API依存の関係を示す図
framework_to_dotnet_migration[".NET Frameworkから.NETへの移行"]
dotnet_framework[".NET Framework"]
dotnet[".NET(Core以降)"]
windows_compat_pack["Windows互換パック"]
package_reference["PackageReference"]
packages_config["packages.config"]
sdk_style_project["SDKスタイルプロジェクト"]
dotnet_upgrade_assistant[".NET Upgrade Assistant"]
github_copilot_modernization["GitHub Copilotモダン化"]
net_standard_2_0[".NET Standard 2.0"]
appdomain["AppDomainの作成"]
dotnet_remoting[".NET Remoting"]
com_plus["COM+(System.EnterpriseServices)"]
workflow_foundation["Workflow Foundation"]
binaryformatter["BinaryFormatter"]
wcf_server["WCFサーバー(WCFサービスのホスト)"]
corewcf["CoreWCF"]
grpc["gRPC"]
ef_core["EF Core"]
ef6["EF6(Entity Framework 6)"]
asp_net_core["ASP.NET Core"]
asp_net_framework["ASP.NET Framework(MVC/Web API)"]
web_forms["ASP.NET Web Forms"]
system_web["System.Web / HttpContext.Current"]
wpf["WPF"]
windows_forms["Windows Forms"]
windows_only_api_dependency["Windows専用API依存"]
wcf_client["WCFクライアント"]
framework_to_dotnet_migration -->|"前提とする"| dotnet_framework
dotnet -->|"の後継"| dotnet_framework
framework_to_dotnet_migration -.->|"利用する"| windows_compat_pack
package_reference -->|"の後継"| packages_config
sdk_style_project -->|"より先に行うべき"| framework_to_dotnet_migration
package_reference -->|"より先に行うべき"| framework_to_dotnet_migration
dotnet_upgrade_assistant -->|"用いるのは非推奨"| framework_to_dotnet_migration
github_copilot_modernization -->|"推奨される対応"| framework_to_dotnet_migration
framework_to_dotnet_migration -.->|"利用する"| net_standard_2_0
appdomain -->|"両立しない"| dotnet
dotnet_remoting -->|"両立しない"| dotnet
com_plus -->|"両立しない"| dotnet
workflow_foundation -->|"両立しない"| dotnet
binaryformatter -.->|"両立しない"| dotnet
wcf_server -.->|"前提とする"| corewcf
wcf_server -.->|"前提とする"| grpc
corewcf -->|"実装を担う"| wcf_server
ef_core -->|"の後継"| ef6
framework_to_dotnet_migration -->|"より先に行うべき"| ef_core
asp_net_core -->|"の後継"| asp_net_framework
web_forms -.->|"両立しない"| asp_net_core
system_web -->|"両立しない"| dotnet
wpf -.->|"利用する"| binaryformatter
windows_forms -.->|"利用する"| binaryformatter
wpf -.->|"利用する"| windows_only_api_dependency
windows_forms -.->|"利用する"| windows_only_api_dependency
windows_compat_pack -.->|"軽減する"| windows_only_api_dependency
dotnet -.->|"利用する"| wcf_client
wcf_server -.->|"前提とする"| dotnet_framework
asp_net_framework -->|"前提とする"| dotnet_framework
概念間の関係(全30件)
図と同じ関係を文章でも列挙します。表示している文と機械可読な意味データ(RDFa)は同じ要素に載っています。確度が「確立した関係」のものは直接の関係として、「条件付きの関係」のものは成立条件つきの言明(rdf:Statement)として表現しています。
- .NET Frameworkから.NETへの移行は.NET Frameworkを前提とします。
- .NET(Core以降)は.NET Frameworkの後継に当たります。
- .NET Frameworkから.NETへの移行はWindows互換パックを利用します。
- PackageReferenceはpackages.configの後継に当たります。
- SDKスタイルプロジェクトは.NET Frameworkから.NETへの移行より先に行うべきです。
- PackageReferenceは.NET Frameworkから.NETへの移行より先に行うべきです。
- .NET Upgrade Assistantを.NET Frameworkから.NETへの移行に用いることは推奨されません。
- GitHub Copilotモダン化は.NET Frameworkから.NETへの移行に対する本記事の推奨です。
- .NET Frameworkから.NETへの移行は.NET Standard 2.0を利用します。
- AppDomainの作成は.NET(Core以降)と両立しません。
- .NET Remotingは.NET(Core以降)と両立しません。
- COM+(System.EnterpriseServices)は.NET(Core以降)と両立しません。
- Workflow Foundationは.NET(Core以降)と両立しません。
- BinaryFormatterは.NET(Core以降)と両立しません。
- WCFサーバー(WCFサービスのホスト)はCoreWCFを前提とします。
- WCFサーバー(WCFサービスのホスト)はgRPCを前提とします。
- CoreWCFはWCFサーバー(WCFサービスのホスト)の実装を担います。
- EF CoreはEF6(Entity Framework 6)の後継に当たります。
- .NET Frameworkから.NETへの移行はEF Coreより先に行うべきです。
- ASP.NET CoreはASP.NET Framework(MVC/Web API)の後継に当たります。
- ASP.NET Web FormsはASP.NET Coreと両立しません。
- System.Web / HttpContext.Currentは.NET(Core以降)と両立しません。
- WPFはBinaryFormatterを利用します。
- Windows FormsはBinaryFormatterを利用します。
- WPFはWindows専用API依存を利用します。
- Windows FormsはWindows専用API依存を利用します。
- Windows互換パックはWindows専用API依存を軽減します。
- .NET(Core以降)はWCFクライアントを利用します。
- WCFサーバー(WCFサービスのホスト)は.NET Frameworkを前提とします。
- ASP.NET Framework(MVC/Web API)は.NET Frameworkを前提とします。
主要概念の定義
機械可読データ
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。