「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。


-戻る
--[[.NET Core]]
--[[移行・マイグレーション]]
---[[.NETのクロスプラットフォーム対応]]

* 目次 [#w8de9357]
#contents

*概要 [#c8871a27]
※ 対象は、[[.NET Core]] 2.0。

-下記の「[[移行元 / 移行先>.NETのクロスプラットフォーム対応#c59bc8d4]]」の、「[[.NET Core]]」移行ノウハウをサマリする。~
-「[[.NET Standardへの移行]]」とホボ≒だった。

*詳細 [#vec241f1]

**準備 [#tccb788c]

***[[移行性評価の実施>.NET Standardへの移行#z0edc7c9]] [#nb3778bc]

***[[移行先>.NETのクロスプラットフォーム対応#e3670d04]]プロジェクトを準備する。 [#v07a7223]
-不要なファイルを削除する。
--*.config
--Properties\AssemblyInfo.cs

-必要なファイルを追加する。
--appsettings.json~
app.configのappSettings SectionをJSON化

※ 参考: [[.NET Core config]]

***Projectファイルを準備する。 [#z6aee5a4]
-以下のようなProjectファイルを準備する。~
(既存のProjectファイルの中身を以下で置き換えればイイ)
 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
     <OutputType>Exe</OutputType>
     <TargetFramework>netcoreapp2.0</TargetFramework>
   </PropertyGroup>
 </Project>

-[[.NET Core]]では、配下のSourceファイルが自動で追加される。~
必要に応じて、ファイルやフォルダの除外設定を行う。~
※ netstandardやnetcoreでは、除外されるファイルやフォルダだけがProjectファイルに明記される。

***ProjectをVisual Studioから開く。 [#l71561fb]
Projectファイルをダブルクリックするか、空のソリューションに追加する。

***Projectの初期設定を行う。 [#b3d0e458]
 <PropertyGroup>
   <TargetFramework>netstandard2.0</TargetFramework>
   <AssemblyName>XXXX</AssemblyName>
   <RootNamespace>YYYY</RootNamespace>
 </PropertyGroup>

**[[ポーティング移行>移行・マイグレーション#ue626a7c]] [#a2ad89b7]

***移行対象ファイルを選別する。 [#s3edb221]
-「[[.NET Standard>.NET Standardへの移行#j19db7af]]」とホボ≒。
-クラス・メソッドの有/無については、[[以下の検索システム>#j6b71fa5]]を使用すると良い。

***必要に応じて、NuGetパッケージを追加する。 [#jbf468f8]
「[[.NET Standard>.NET Standardへの移行#b63d5929]]」とホボ≒。

***必要に応じて、[[ポーティング移行>移行・マイグレーション#ue626a7c]]する。 [#l96c8e8b]
「[[.NET Standard>.NET Standardへの移行#k31bea09]]」とホボ≒。

*パッケージ・マネージャ [#fe286a36]

**[[NuGet>.NET Standardへの移行#f51240e8]] [#c240eceb]

*その他 [#lafa8f09]

**型付データセット [#nb9fd2e2]
サポートの予定はない模様。

-Port xsd.exe to .NET Core · Issue #8647 · dotnet/corefx~
https://github.com/dotnet/corefx/issues/8647

*参考 [#e8a4213a]

**[[.NET Standardへの移行]] [#c97b888a]

**[[ASP.NET Coreへの移行]] [#ob21c056]

**microsoft.com [#r7f417f7]
-.NET Framework から .NET Core への移植 | Microsoft Docs~
https://docs.microsoft.com/ja-jp/dotnet/core/porting/

***MSDN magazine [#p0ca5adb]
-.NET Core
--.NET Core - .NET Core による .NET のクロスプラットフォームへの移行~
https://msdn.microsoft.com/ja-jp/magazine/mt694084.aspx
--Roslyn と .NET Core によるクロスプラットフォーム コードの生成~
https://msdn.microsoft.com/ja-jp/magazine/mt808499
--方法や場所を選ばない .NET アプリの作成~
https://msdn.microsoft.com/ja-jp/magazine/mt842494

***.NET API Browser [#j6b71fa5]
https://docs.microsoft.com/en-us/dotnet/api/index

-.NET Core API Reference~
https://docs.microsoft.com/en-us/dotnet/api/index?view=netcore-2.0

**その他 [#deed1371]
-.NET Coreへの移植 | ++C++; // 未確認飛行 C ブログ~
http://ufcpp.net/blog/2016/2/porting-to-net-core/

-.NET Core 2.1のロードマップが公開されたようです - つばろぐ~
http://tsubalog.hatenablog.com/entry/net-core-2-1-roadmap

----
Tags: [[:.NET開発]], [[:.NET Core]], [[:移行]]

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