マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

※ 対象は、.NET Standard 2.0。

詳細

準備

移行プロセスの確認

移行性評価の実施

必要に応じて、以下ツールを使用し移行性を評価する。

移行先プロジェクトを準備する。

不要なファイルを削除する。

Projectファイルを準備する。

ProjectをVisual Studioから開く。

Projectファイルをダブルクリックするか、空のソリューションに追加する。

Projectの初期設定を行う。

<PropertyGroup>
  <TargetFramework>netstandard2.0</TargetFramework>
  <AssemblyName>XXXX</AssemblyName>
  <RootNamespace>YYYY</RootNamespace>
</PropertyGroup>

ポーティング移行

移行対象ファイルを選別する。

コンパイル・エラーをチェックしながら移行対象ファイルを選別する。

必要に応じて、NuGetパッケージを追加する。

必要に応じて、ポーティング移行する。

以下のPlatformやLibraryに依存していた処理を、
削除するか、ポーティング移行する。

パッケージ・マネージャ

NuGet

引き続き使用できる。

Dependencies

.NET Standard.NET Core開発に活用できるNuGetライブラリは、
.NET Standard.NET Core 側にだけ、Dependencies を持つ。

※ しかし、実際には、Dependenciesが正確に書かれていないケースも多く、
 (「target="lib\netXXX」毎にDependenciesが異なるので当然と言えば当然)
 実際にインストールして.NET Standardに対応しているかどうかを判断する。

System系ライブラリ

*.config

System.Configuration.ConfigurationManager?

Microsoft.Extensions.Configuration

以下の情報を元にマイグレーションする必要がある。

その他ライブラリ

log4net

参考

ASP.NET Core系ライブラリ

System.Web

対応するライブラリが「Microsoft.AspNetCore?.XXXX」にある可能性がある。

RootPath?

HttpContext?

※ 上記の「Mimicking HttpContext?.Current」で.NET Standardなライブラリ化も可能。

Session

文字列しか格納できなくなったので、複雑なオブジェクトはJSONに変換する。

Cookie

Microsoft.Owin

対応するライブラリが「Microsoft.AspNetCore?.XXXX」にある可能性がある。

Base64Url

ASP.NET Core系ミドルウェア

MVC

WebAPI

Filters

Microsoft.AspNetCore?.Mvc.Filters

参考

参考

.NET Standardは、.NET Coreのサブセットなので、≒.NET Core
なので、以下のリンクは、.NET Coreへの移行の情報を含む。

.NET Coreへの移行

ASP.NET Coreへの移行

microsoft.com

Microsoft Docs

MSDN magazine > Essential .NET

.NET API Browser

https://docs.microsoft.com/en-us/dotnet/api/index

その他


Tags: :.NET開発, :.NET Core, :.NET Standard, :移行


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS