が発生する可能性があります。- または を返すメソッドで プロパティの値を取得します。
using
句で オブジェクトをインスタンス化します。using statement
内で プロパティの値を取得します。 例:
using (new OperationContextScope(OperationContext.Current))
{
OperationContext context = OperationContext.Current; // OperationContext.Current is null.
// ...
}
|
+|提案される解決策|この問題に対処するために、次の操作を行うことができます。- 次のようにコードを変更して、新しい
null
以外の オブジェクトをインスタンス化します。
OperationContext ocx = OperationContext.Current;
using (new OperationContextScope(OperationContext.Current))
{
OperationContext.Current = new OperationContext(ocx.Channel);
// ...
}
- 最新の更新プログラムを .NET framework 4.6.2 にインストールするか、最新バージョンの .NET Framework にアップグレードします。 これにより、 で のフローが無効になり、.NET Framework 4.6.1 以前のバージョンで WCF アプリケーションの動作が復元されます。 この動作は構成可能です。構成ファイルに次のアプリ設定を追加することと同じです。
<appSettings>
<add key="Switch.System.ServiceModel.DisableOperationContextAsyncFlow" value="true" />
</appSettings>
この変更が望ましくなく、アプリケーションが操作コンテキスト間の実行コンテキスト フローに依存している場合は、次のようにそのフローを有効にできます。<appSettings>
<add key="Switch.System.ServiceModel.DisableOperationContextAsyncFlow" value="false" />
</appSettings>
|
+|スコープ|エッジ|
+|Version|4.6.2|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wcf/serialization-control-characters-with-datacontractjsonserializer-now.md b/includes/migration-guide/retargeting/wcf/serialization-control-characters-with-datacontractjsonserializer-now.md
new file mode 100644
index 00000000000..2ab3b618a3d
--- /dev/null
+++ b/includes/migration-guide/retargeting/wcf/serialization-control-characters-with-datacontractjsonserializer-now.md
@@ -0,0 +1,11 @@
+### DataContractJsonSerializer による制御文字のシリアル化が ECMAScript V6 および V8 対応に
+
+| | |
+|---|---|
+|説明|.NET framework 4.6.2 以前のバージョンでは、 で、ECMAScript V6 および V8 標準と互換性がある方法で \b、\f、\t などの一部の特殊制御文字がシリアル化されませんでした。 .NET Framework 4.7 以降、これらの制御文字のシリアル化は ECMAScript V6 および V8 と互換性があります。|
+|提案される解決策|.NET Framework 4.7 を対象とするアプリの場合、この機能は既定で有効になっています。 この動作が望ましくない場合は、app.config または web.config ファイルの <runtime>
セクションに次の行を追加して、この機能を無効にすることができます。<runtime>
<AppContextSwitchOverrides value="Switch.System.Runtime.Serialization.DoNotUseECMAScriptV6EscapeControlCharacter=false" />
</runtime>
|
+|スコープ|エッジ|
+|Version|4.7|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wcf/wcf-binding-with-transportwithmessagecredential-security-mode.md b/includes/migration-guide/retargeting/wcf/wcf-binding-with-transportwithmessagecredential-security-mode.md
new file mode 100644
index 00000000000..5f9088be214
--- /dev/null
+++ b/includes/migration-guide/retargeting/wcf/wcf-binding-with-transportwithmessagecredential-security-mode.md
@@ -0,0 +1,11 @@
+### TransportWithMessageCredential セキュリティ モードを使用する WCF バインド
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6.1 より、TransportWithMessageCredential セキュリティ モードを使用する WCF バインドで署名のない非対称のセキュリティ キーの "to" ヘッダーを含むメッセージを取得するように設定できるようになりました。既定では、署名のない "to" ヘッダーは .NET 4.6.1 でも引き続き拒否されます。 これは、アプリケーションが Switch.System.ServiceModel.AllowUnsignedToHeader 構成切り替えを使用するこの新しい動作モードをオプトインした場合にのみ許可されます。これはオプトイン機能であるため、既存のアプリの動作に影響はないはずです。|
+|提案される解決策|これはオプトイン機能であるため、既存のアプリの動作に影響はないはずです。 新しい動作を使用するかどうかを制御するには、次の構成設定を使用します。<runtime>
<AppContextSwitchOverrides value="Switch.System.ServiceModel.AllowUnsignedToHeader=true" />
</runtime>
|
+|スコープ|透明|
+|Version|4.6.1|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wcf/wcf-message-security-now-able-use-tls11-tls12.md b/includes/migration-guide/retargeting/wcf/wcf-message-security-now-able-use-tls11-tls12.md
new file mode 100644
index 00000000000..137441eb47e
--- /dev/null
+++ b/includes/migration-guide/retargeting/wcf/wcf-message-security-now-able-use-tls11-tls12.md
@@ -0,0 +1,10 @@
+### WCF メッセージ セキュリティで TLS1.1 と TLS1.2 が使用可能に
+
+| | |
+|---|---|
+|説明|.NET Framework 4.7 以降、顧客はアプリケーション構成設定を介し、SSL3.0 と TLS1.0 に加え、WCF メッセージ セキュリティで TLS1.1 または TLS1.2 を構成できます。|
+|提案される解決策|.NET Framework 4.7 では、WCF メッセージ セキュリティの TLS1.1 と TLS1.2 のサポートは既定で無効になっています。 app.config または web.config ファイルの <runtime>
セクションに次の行を追加することで有効にできます。<runtime>
<AppContextSwitchOverrides value="Switch.System.ServiceModel.DisableUsingServicePointManagerSecurityProtocols=false;Switch.System.Net.DontEnableSchUseStrongCrypto=false" />
</runtime>
|
+|スコープ|エッジ|
+|Version|4.7|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wcf/wcf-transport-security-supports-certificates-stored-using-cng.md b/includes/migration-guide/retargeting/wcf/wcf-transport-security-supports-certificates-stored-using-cng.md
new file mode 100644
index 00000000000..0d44f352322
--- /dev/null
+++ b/includes/migration-guide/retargeting/wcf/wcf-transport-security-supports-certificates-stored-using-cng.md
@@ -0,0 +1,10 @@
+### WCF トランスポート セキュリティで CNG を使用して格納される証明書をサポート
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6.2 を対象とするアプリ以降では、WCF トランスポート セキュリティでは、Windows 暗号化ライブラリ (CNG) を使用して格納される証明書がサポートされます。 このサポートは、指数の長さが 32 ビット以下の公開キーを持つ証明書に限定されます。 アプリケーションが対象 .NET Framework 4.6.2、ときにこの機能は既定でオンです。 .NET Framework の以前のバージョンで X509 を使用しようとすると、証明書を CSG のキー記憶域プロバイダーが例外をスローします。|
+|提案される解決策|.NET Framework 4.6.1 以前を対象とするものの、.NET Framework 4.6.2 で実行されているアプリの場合、app.config または web.config ファイルの <runtime>
セクションに次の行を追加することで、CNG 証明書のサポートを有効にできます。<runtime>
<AppContextSwitchOverrides value="Switch.System.ServiceModel.DisableCngCertificates=false" />
</runtime>
次のコードを使用してプログラムで行うこともできます。private const string DisableCngCertificates = @"Switch.System.ServiceModel.DisableCngCertificate";
AppContext.SetSwitch(disableCngCertificates, false);
Const DisableCngCertificates As String = "Switch.System.ServiceModel.DisableCngCertificates"
AppContext.SetSwitch(disableCngCertificates, False)
この変更のため、CNG 証明書の失敗で、セキュリティで保護された通信を開始する試行に依存する例外処理コードは、実行されなくなることに注意してください。|
+|スコープ|マイナー|
+|Version|4.6.2|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wcf/x509certificateclaimsetfindclaims-considers-all-claimtypes.md b/includes/migration-guide/retargeting/wcf/x509certificateclaimsetfindclaims-considers-all-claimtypes.md
new file mode 100644
index 00000000000..f0320214caa
--- /dev/null
+++ b/includes/migration-guide/retargeting/wcf/x509certificateclaimsetfindclaims-considers-all-claimtypes.md
@@ -0,0 +1,11 @@
+### X509CertificateClaimSet.FindClaims は、すべての claimTypes を考慮します
+
+| | |
+|---|---|
+|説明|X509 クレーム セットがその SAN フィールド内の複数の DNS エントリを含む証明書から初期化される場合は、.NET Framework 4.6.1 を対象とするアプリで、メソッドをすべての DNS エントリの claimType 引数と一致を試みます。 .NET Framework の以前のバージョンを対象とするアプリに対して、メソッドは claimType 引数と最後の DNS エントリのみを一致させようとしています。|
+|提案される解決策|この変更は、.NET Framework 4.6.1 を対象とするアプリケーションのみに影響します。 この変更は、[DisableMultipleDNSEntries](~/docs/framework/migration-guide/mitigation-x509certificateclaimset-findclaims-method.md#mitigation) 互換性スイッチで無効にできます (または、4.6.1 より前を対象としている場合は、有効にできます)。|
+|スコープ|マイナー|
+|Version|4.6.1|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wf/accessibility-improvements-windows-workflow-foundation-wf-designer.md b/includes/migration-guide/retargeting/wf/accessibility-improvements-windows-workflow-foundation-wf-designer.md
new file mode 100644
index 00000000000..439d3ec7e5c
--- /dev/null
+++ b/includes/migration-guide/retargeting/wf/accessibility-improvements-windows-workflow-foundation-wf-designer.md
@@ -0,0 +1,10 @@
+### Windows Workflow Foundation (WF) ワークフロー デザイナーでのアクセシビリティの向上
+
+| | |
+|---|---|
+|説明|Windows Workflow Foundation (WF) ワークフロー デザイナーは、アクセシビリティ テクノロジによって操作性が向上しています。 次のような改善点があります。- 一部のコントロールで、タブ オーダーが左から右、上から下に変更されます:
- アクティビティの関連付けデータを設定するための関連付けの初期化ウィンドウ
- 、、、および アクティビティのコンテンツ定義ウィンドウ
- キーボードで利用できる機能が増えます:
- アクティビティのプロパティを編集する際、プロパティ グループに初めてフォーカスを設定したときに、プロパティ グループをキーボードで折りたたむことができます。
- 警告アイコンにキーボードでアクセスできるようになりました。
- [プロパティ] ウィンドウの [その他のプロパティ] ボタンに、キーボードでアクセスできるようになりました。
- キーボードを使って、ワークフロー デザイナーの [引数] および [変数] ウィンドウのヘッダー項目にアクセスできるようになりました。
- 次のような場合に、フォーカスのある項目の可視性が向上しました:
- ワークフロー デザイナーおよびアクティビティ デザイナーで使われているデータ グリッドへの行の追加。
- および アクティビティ内のフィールド間の Tab 移動。
- 変数または引数の既定値の設定
- スクリーン リーダーが正しく認識できるようになりました:
- ワークフロー デザイナーで設定されたブレークポイント。
- 、、 アクティビティ。
- アクティビティの内容。
- アクティビティのターゲットの種類。
- アクティビティの [例外] コンボ ボックスと [Finally] セクション。
- メッセージング アクティビティの [メッセージの種類] コンボ ボックス、[関連付け初期化子の追加] ウィンドウのスプリッター、[コンテンツ定義] ウィンドウで、および [CorrelatesOn の定義] ウィンドウ (、、、および )。
- ステート マシンの遷移と遷移先。
- アクティビティの注釈とコネクタ。
- アクティビティのコンテキスト (右クリック) メニュー。
- プロパティ グリッドの、プロパティ値エディター、[検索のクリア] ボタン、[カテゴリ別] および [アルファベット順] の並べ替えボタン、[式エディター] ダイアログ。
- ワークフロー デザイナーのズーム パーセンテージ。
- および アクティビティの区切り記号。
- アクティビティ。
- ディクショナリ アクティビティの [型の選択] ウィンドウ (
Microsoft.Activities.AddToDictionary<TKey,TValue>
、Microsoft.Activities.RemoveFromDictionary<TKey,TValue>
など)。 - [.NET 型の参照と選択] ウィンドウ。
- ワークフロー デザイナーでの階層リンク。
- ハイ コントラスト テーマを選ぶと、要素間のコントラスト比の向上や、フォーカス要素に使われる選択ボックスの認識性の向上など、ワークフロー デザイナーとそのコントロールの表示について多くの点が向上していることがわかります。
|
+|提案される解決策|ワークフロー デザイナーが再ホストされたアプリケーションでは、次のいずれかを行うことでこれらの変更を利用できます。- .NET Framework 4.7.1 を対象にしてアプリケーションを再コンパイルします。 これらのアクセシビリティの変更が既定で有効になります。
- アプリケーションの対象が .NET Framework 4.7 以前であっても、.NET Framework 4.7.1 上で実行している場合は、次の [AppContext スイッチ](~/docs/framework/configure-apps/file-schema/runtime/appcontextswitchoverrides-element.md)を app.config ファイルの
<runtime>
セクションに追加して false
に設定することにより、従来のアクセシビリティ動作を無効にできます (次の例をご覧ください)。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7"/>
</startup>
<runtime>
<!-- AppContextSwitchOverrides value attribute is in the form of 'key1=true/false;key2=true/false -->
<AppContextSwitchOverrides value="Switch.UseLegacyAccessibilityFeatures=false" />
</runtime>
</configuration>
.NET Framework 4.7.1 以降を対象とするアプリケーションで以前のアクセシビリティ動作を残す場合、この AppContext スイッチを明示的に true
に設定することで以前のアクセシビリティ機能を選択できます。|
+|スコープ|マイナー|
+|Version|4.7.1|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wf/new-ambiguous-dispatcherinvoke-overloads-could-result-different-behavior.md b/includes/migration-guide/retargeting/wf/new-ambiguous-dispatcherinvoke-overloads-could-result-different-behavior.md
new file mode 100644
index 00000000000..3d9a5e979a8
--- /dev/null
+++ b/includes/migration-guide/retargeting/wf/new-ambiguous-dispatcherinvoke-overloads-could-result-different-behavior.md
@@ -0,0 +1,11 @@
+### 新しい (あいまいな) Dispatcher.Invoke オーバーロードが、異なる動作になる可能性がある
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 では、 型のパラメーターを含む に新しいオーバーロードが追加されます。 既存のコードを再コンパイルすると、コンパイラは、 パラメーターを持つ Dispatcher.Invoke メソッドの呼び出しを、 パラメーターを持つ Dispatcher.Invoke メソッドの呼び出しとして解決することができます。 パラメーターを持つ Dispatcher.Invoke オーバーロードの呼び出しが パラメーターを持つ Dispatcher.Invoke オーバーロードの呼び出しとして解決された場合、次のような動作の差異が生じることがあります。- 例外が発生した場合、 イベントと イベントは発生しません。 代わりに、例外は イベントによって処理されます。
- などの一部のメンバーの呼び出しは、操作が完了するまでブロックされます。
|
+|提案される解決策|あいまいさ (および例外処理またはブロック動作における考えられる相違点) を回避するために、呼び出し元の Dispatcher.Invoke は Invoke 呼び出しの 2 番目のパラメーターとして空の object[] を渡すことで、.NET 4.0 メソッドのオーバーロードに解決されるようにできます。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wf/some-workflow-drag-and-drop-apis-are-obsolete.md b/includes/migration-guide/retargeting/wf/some-workflow-drag-and-drop-apis-are-obsolete.md
new file mode 100644
index 00000000000..0ceb07647cf
--- /dev/null
+++ b/includes/migration-guide/retargeting/wf/some-workflow-drag-and-drop-apis-are-obsolete.md
@@ -0,0 +1,11 @@
+### 一部の WorkFlow ドラッグ アンド ドロップ API が廃止されました
+
+| | |
+|---|---|
+|説明|この WorkFlow ドラッグ アンド ドロップ API は廃止され、アプリが 4.5 向けにリビルドされた場合、コンパイラ警告が発生します。|
+|提案される解決策|複数オブジェクトでの操作をサポートする新しい API を代わりに使用する必要があります。 または、ビルド警告を抑制するか、古いコンパイラを使用して警告を回避できます。 API は、まだサポートされています。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wf/workflow-30-types-are-obsolete.md b/includes/migration-guide/retargeting/wf/workflow-30-types-are-obsolete.md
new file mode 100644
index 00000000000..9df6fc92c31
--- /dev/null
+++ b/includes/migration-guide/retargeting/wf/workflow-30-types-are-obsolete.md
@@ -0,0 +1,10 @@
+### WorkFlow 3.0 タイプは廃止されました
+
+| | |
+|---|---|
+|説明|Windows Workflow Foundation (WWF) 3.0 API (System.Workflow 名前空間からのもの) は廃止されました。|
+|提案される解決策|新しい WWF 4.0 API (System.Activities) を代わりに使用する必要があります。 新しい API の使用例は[ここ](~/docs/framework/windows-workflow-foundation/how-to-update-the-definition-of-a-running-workflow-instance.md)にあり、詳しいガイダンスは[ここ](http://blogs.msdn.com/b/workflowteam/archive/2012/02/08/deprecatingwf3.aspx)にあります。 または、WWF 3.0 API はまだサポートされているので、使用でき、ビルド時の警告は、警告を抑制することによって、または以前のコンパイラを使用することによって回避できます。|
+|スコープ|Major|
+|バージョン|4.5|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wf/workflow-checksums-changed-from-md5-sha1.md b/includes/migration-guide/retargeting/wf/workflow-checksums-changed-from-md5-sha1.md
new file mode 100644
index 00000000000..cf93570a0b0
--- /dev/null
+++ b/includes/migration-guide/retargeting/wf/workflow-checksums-changed-from-md5-sha1.md
@@ -0,0 +1,10 @@
+### ワークフローのチェックサムが MD5 から SHA1 に変更
+
+| | |
+|---|---|
+|説明|Visual Studio によるデバッグをサポートするために、ワークフロー ランタイムによって、ハッシュ アルゴリズムを使用してワークフロー インスタンスのチェックサムが生成されます。 .NET Framework 4.6.2 以前のバージョンでは、ワークフロー チェックサムのハッシュで MD5 アルゴリズムが使用され、FIPS 対応システムで問題が発生していました。 .NET Framework 4.7 以降、アルゴリズムは SHA1 になります。 コードによってチェックサムが永続化されている場合、互換性がありません。|
+|提案される解決策|チェックサム エラーに起因してコードでワークフロー インスタンスを読み込めない場合、AppContext
スイッチ "Switch.System.Activities.UseMD5ForWFDebugger" を true に設定してみてください。下のコードをご覧ください。System.AppContext.SetSwitch("Switch.System.Activities.UseMD5ForWFDebugger", true);
または、次のように構成します。<configuration>
<runtime>
<AppContextSwitchOverrides value="Switch.System.Activities.UseMD5ForWFDebugger=true" />
</runtime>
</configuration>
|
+|スコープ|マイナー|
+|Version|4.7|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wf/workflowdesignerload-doesnt-remove-symbol-property.md b/includes/migration-guide/retargeting/wf/workflowdesignerload-doesnt-remove-symbol-property.md
new file mode 100644
index 00000000000..742b82d3b5d
--- /dev/null
+++ b/includes/migration-guide/retargeting/wf/workflowdesignerload-doesnt-remove-symbol-property.md
@@ -0,0 +1,11 @@
+### WorkflowDesigner.Load ではシンボル プロパティが削除されない
+
+| | |
+|---|---|
+|説明|ワークフロー デザイナーで .NET Framework 4.5 を対象とし、再ホストされた 3.5 ワークフローを メソッドで読み込むと、ワークフローの保存中に がスローされます。|
+|提案される解決策|このバグは、ワークフロー デザイナーで .NET Framework 4.5 を対象とするときにのみ現れるため、WorkflowDesigner.Context.Services.GetService<DesignerConfigurationService>().TargetFrameworkName
を 4.0 の .NET Framework に設定することによって回避できます。あるいは、 の代わりに メソッドを使用してワークフローを読み込むことで問題を回避できます。|
+|スコープ|Major|
+|バージョン|4.5|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/winforms/accessibility-improvements-windows-forms-controls.md b/includes/migration-guide/retargeting/winforms/accessibility-improvements-windows-forms-controls.md
new file mode 100644
index 00000000000..f2f94ff3c2e
--- /dev/null
+++ b/includes/migration-guide/retargeting/winforms/accessibility-improvements-windows-forms-controls.md
@@ -0,0 +1,11 @@
+### Windows フォーム コントロールでのアクセシビリティの向上
+
+| | |
+|---|---|
+|説明|Windows フォームはアクセシビリティ テクノロジによってユーザー サポートの動作が向上します。 次のような点が変更されます。- ハイ コントラスト モード中の表示が向上する変更。
- プロパティ ブラウザーのエクスペリエンスが向上する変更。 プロパティ ブラウザーについては次のような点が向上します。
- さまざまなドロップダウン選択ウィンドウを利用することでキーボード操作が便利になりました。
- 不要なタブ ストップが減ります。
- コントロールの種類の報告機能が改善されました。
- ナレーターの動作が改善されました。
- コントロールに不足している UI アクセシビリティ パターンを実装する変更。
|
+|提案される解決策|以上の変更を選択する方法と選択しない方法 アプリケーションでこれらの変更を利用するには、.NET Framework 4.7.1 以降で実行する必要があります。 アプリケーションは、次のいずれかの方法でこれらの変更を利用できます。- .NET Framework 4.7.1 を対象にして再コンパイルします。 .NET Framework 4.7.1 以降を対象とする Windows フォーム アプリケーションでは、これらのアクセシビリティの変更が既定で有効になります。
- 下の例のように、app.config ファイルの
<runtime>
セクションに次の [AppContext スイッチ](~/docs/framework/configure-apps/file-schema/runtime/appcontextswitchoverrides-element.md)を追加し、それを false
に設定することで、以前のアクセシビリティ動作を無効にします。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7"/>
</startup>
<runtime>
<!-- AppContextSwitchOverrides value attribute is in the form of 'key1=true/false;key2=true/false -->
<AppContextSwitchOverrides value="Switch.UseLegacyAccessibilityFeatures=false" />
</runtime>
</configuration>
.NET Framework 4.7.1 以降を対象とするアプリケーションで以前のアクセシビリティ動作を残す場合、この AppContext スイッチを明示的に true
に設定することで以前のアクセシビリティ機能を選択できます。UI オートメーションの概要については、「[UI オートメーションの概要](~/docs/framework/ui-automation/ui-automation-overview.md)」をご覧ください。UI オートメーション パターンとプロパティに対して追加されたサポート アクセシビリティ クライアントは、一般的なパブリックに記述された呼び出しパターンを使って、新しい WinForms アクセシビリティ機能を利用できます。 これらのパターンは、WinForms に固有ではありません。 たとえば、アクセシビリティ クライアントは、IAccessible インターフェイス (MAAS) の QueryInterface メソッドを呼び出して、IServiceProvider インターフェイスを取得することができます。 このインターフェイスを使用できる場合、クライアントはその QueryService メソッドを使って、IAccessibleEx インターフェイスを要求できます。 詳しくは、「[Using IAccessibleEx from a Client](https://msdn.microsoft.com/library/windows/desktop/dd561924.aspx)」(クライアントからの IAccessibleEx の使用) をご覧ください。 .NET Framework 4.7.1、IServiceProvider で始まると[IAccessibleEx](https://msdn.microsoft.com/library/windows/desktop/dd561898.aspx) (該当する場合) が WinForms ユーザー補助オブジェクトに対して使用します。 .NET Framework 4.7.1 は、次の UI オートメーション パターンやプロパティのサポートを追加します。T:System.Windows.Forms.ToolStripSplitButton
および T:System.Windows.Forms.ComboBox
コントロールは、[展開/折りたたみパターン](~/docs/framework/ui-automation/implementing-the-ui-automation-expandcollapse-control-pattern.md)をサポートします。T:System.Windows.Forms.ToolStripMenuItem
コントロールの [ControlType](~/docs/framework/ui-automation/ui-automation-support-for-the-menubar-control-type.md) プロパティの値は です。T:System.Windows.Forms.ToolStripItem
コントロールは、[Name](xref:System.Windows.Automation.AutomationElement.NameProperty) プロパティと[展開/折りたたみパターン](~/docs/framework/ui-automation/implementing-the-ui-automation-expandcollapse-control-pattern.md)をサポートします。T:System.Windows.Forms.ToolStripDropDownItem
コントロールは、ドロップダウンが展開されたり折りたたまれたりしたときの StateChange と NameChange を示す をサポートします。T:System.Windows.Forms.ToolStripDropDownButton
コントロールの [ControlType](~/docs/framework/ui-automation/ui-automation-support-for-the-menubar-control-type.md) プロパティの値は です。T:System.Windows.Forms.DataGridViewCheckBoxCell
コントロールは[トグル パターン](xref:System.Windows.Automation.TogglePattern)をサポートします。T:System.Windows.Forms.NumericUpDown
および T:System.Windows.Forms.DomainUpDown
コントロールは、[Name](xref:System.Windows.Automation.AutomationElement.NameProperty) をサポートし、[ControlType](~/docs/framework/ui-automation/ui-automation-support-for-the-spinner-control-type.md) は です。
PropertyGrid コントロールの向上 .NET Framework 4.7.1 では、PropertyBrowser コントロールが次のように向上します。- ユーザーが
T:System.Windows.Forms.PropertyGrid
コントロールに誤った値を入力すると表示されるエラー ダイアログの [詳細] ボタンは、[展開/折りたたみパターン](~/docs/framework/ui-automation/implementing-the-ui-automation-expandcollapse-control-pattern.md)、状態と名前の変更通知、および [ControlType](~/docs/framework/ui-automation/ui-automation-support-for-the-menubar-control-type.md) プロパティの値 をサポートします。 - エラー ダイアログの [詳細] ボタンを展開すると表示されるメッセージ ウィンドウは、キーボードでアクセスできるようになり、エラー メッセージの内容をナレーターで読み上げることができます。
T:System.Windows.Forms.PropertyGrid
コントロールの行の は、"Row" から "Cell" に変更されました。 セルは UIA の ControlType "DataItem" にマップし、適切なキーボード ショートカットとナレーターの読み上げをサポートすることができます。T:System.Windows.Forms.PropertyGrid
コントロールの P:System.Windows.Forms.PropertySort
プロパティが F:System.Windows.Forms.PropertySory.Categorized
に設定されているときにヘッダー項目を表す T:System.Windows.Forms.PropertyGrid
コントロールの行は、[ControlType](~/docs/framework/ui-automation/ui-automation-support-for-the-menubar-control-type.md) プロパティの値が です。T:System.Windows.Forms.PropertyGrid
コントロールの P:System.Windows.Forms.PropertySort
プロパティが F:System.Windows.Forms.PropertySory.Categorized
に設定されているときにヘッダー項目を表す T:System.Windows.Forms.PropertyGrid
コントロールの行は、[展開/折りたたみパターン](~/docs/framework/ui-automation/implementing-the-ui-automation-expandcollapse-control-pattern.md)をサポートします。- グリッドとその上にある ToolBar の間のキーボード ナビゲーションが向上します。 "Shift + Tab" キーを押すと、ToolBar 全体ではなく、ToolBar の最初のボタンが選択されます。
- ハイ コントラスト モードで表示された
T:System.Windows.Forms.PropertyGrid
コントロールでは、P:System.Windows.Forms.PropertySort
プロパティの現在の値に対応する ToolBar ボタンの周囲にフォーカス四角形が描画されます。 - ハイ コントラスト モードで表示され、
P:System.Windows.Forms.PropertySort
プロパティが F:System.Windows.Forms.PropertySory.Categorized
に設定された T:System.Windows.Forms.PropertyGrid
コントロールでは、カテゴリ ヘッダーの背景がハイ コントラストの色で表示されます。 T:System.Windows.Forms.PropertyGrid
コントロールでは、フォーカスが設定された ToolBar 項目と、P:System.Windows.Forms.PropertySort
プロパティの現在の値を示す ToolBar 項目の区別が明確になります。 この修正は、ハイ コントラストの変更と、非ハイ コントラストのシナリオに対する変更で構成されます。P:System.Windows.Forms.PropertySort
プロパティの現在の値を示す T:System.Windows.Forms.PropertyGrid
コントロールの ToolBar 項目は、[トグル パターン](xref:System.Windows.Automation.TogglePattern)をサポートします。- 配置ピッカーで選択された配置を区別するナレーターのサポートが向上します。
- 空の
T:System.Windows.Forms.PropertyGrid
コントロールがフォームに表示されているとき、以前はフォーカスを設定されませんでしたが、現在はフォーカスを設定されるようになっています。
ハイ コントラスト テーマでの OS で定義された色の使用P:System.Windows.Forms.Control.FlatStyle
が (既定のスタイル) に設定された T:System.Windows.Forms.Button
および T:System.Windows.Forms.CheckBox
コントロールは、ハイ コントラスト テーマが選択されているときは OS で定義された色を使用するようになります。 以前は、テキストと背景の色はコントラストが同じで、見分けるのが困難でした。P:System.Windows.Forms.Control.Enabled
が false に設定された T:System.Windows.Forms.Button
、T:System.Windows.Forms.CheckBox
、T:System.Windows.Forms.RadioButton
、T:System.Windows.Forms.Label
、T:System.Windows.Forms.LinkLabel
、および T:System.Windows.Forms.GroupBox
は、以前は影付きの色を使ってハイ コントラスト テーマのテキストをレンダリングしており、背景に対するコントラストが低くなっていました。 現在は、これらのコントロールは OS によって定義された "無効なテキスト" の色を使うようになっています。 この修正は、P:System.Windows.Forms.Control.FlatStyle
プロパティが F:System.Windows.Forms.FlatStyle.System
以外の値に設定されたコントロールに適用されます。 後者のコントロールは OS によってレンダリングされます。T:System.Windows.Forms.DataGridView
では、現在フォーカスが設定されているセルの内容を囲むように目に見える四角形がレンダリングされます。 以前は、特定のハイ コントラスト テーマではこれは見えませんでした。P:System.Windows.Forms.ToolStripItem.Enabled
プロパティが false に設定された T:System.Windows.Forms.ToolStripMenuItem
コントロールは、OS によって定義された "無効なテキスト" の色を使うようになります。P:System.Windows.Forms.ToolStripItem.Checked
プロパティが true に設定された T:System.Windows.Forms.ToolStripMenuItem
コントロールは、コントラストのあるシステム カラーで関連するチェック マークをレンダリングします。 以前は、チェック マークの色に十分なコントラストがなく、ハイ コントラスト テーマでは見えませんでした。
注: Windows 10 では、一部のハイ コントラストのシステム カラーの値が変更されています。 Windows フォームのフレームワークは、Win32 フレームワークに基づいています。 最も快適に利用するためには、最新版の Windows で実行し、テスト アプリケーションに app.manifest ファイルを追加して最新の OS 変更を選択し、次のコードのコメントを解除します。<!-- Windows 10 -->
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />
キーボード ナビゲーションの向上T:System.Windows.Forms.ComboBox
コントロールの P:System.Windows.Forms.ComboBox.DropDownStyle
が F:System.Windows.Forms.DropDownStyle.DropDownList
に設定されていて、フォームのタブ オーダーで最初のコントロールである場合、キーボードを使って親フォームが開かれると、コントロールにフォーカスの四角形が表示されます。 この変更の前は、キーボード フォーカスはこのコントロールに設定されましたが、フォーカス インジケーターはレンダリングされませんでした。
ナレーター サポートが改善されましたT:System.Windows.Forms.MonthCalendar
コントロールに、以前は行われなかったナレーターによるコントロールの値の読み上げなど、コントロールにアクセスするための支援技術のサポートが追加されました。T:System.Windows.Forms.CheckedListBox
コントロールは、P:System.Windows.Forms.CheckState
プロパティが変更されるとナレーターに通知するようになりました。 以前は、ナレーターは通知を受け取らなかったため、ユーザーは P:System.Windows.Forms.CheckState
が更新されたことを教えられませんでした。T:System.Windows.Forms.LinkLabel
コントロールがコントロール内のテキストをナレーターに通知する方法が変更されました。 以前は、ナレーターはこのテキストを 2 回読み上げ、ユーザーには表示されなくても "&" 記号を実際のテキストとして読んでいました。 重複するテキストおよび不要な "&" 記号が、ナレーターの読み上げから除去されました。T:System.Windows.Forms.DataGridViewCell
コントロールの種類が、読み取り専用の状態をナレーターおよびその他の支援技術に正しくレポートするようになりました。- ナレーターは、[マルチドキュメント インターフェイス](~/docs/framework/winforms/advanced/multiple-document-interface-mdi-applications.md) アプリケーションの子ウィンドウのシステム メニューを読み上げられるようになりました。
- ナレーターは、
P:System.Windows.Forms.ToolStripItem.Enabled
プロパティが false に設定された T:System.Windows.Forms.ToolStripMenuItem
コントロールを読み上げられるようになりました。 以前のナレーターは、無効なメニュー項目にフォーカスを設定できず、内容を読み上げることができませんでした。
|
+|スコープ|Major|
+|Version|4.7.1|
+|型|再ターゲット中|
+|影響を受ける API|- [MonthCalendar.AccessibilityObject](xref:System.Windows.Forms.Control.AccessibilityObject)
|
+
diff --git a/includes/migration-guide/retargeting/winforms/dataobjectgetdata-now-retrieves-data-utf-8.md b/includes/migration-guide/retargeting/winforms/dataobjectgetdata-now-retrieves-data-utf-8.md
new file mode 100644
index 00000000000..27c1b1b606c
--- /dev/null
+++ b/includes/migration-guide/retargeting/winforms/dataobjectgetdata-now-retrieves-data-utf-8.md
@@ -0,0 +1,11 @@
+### DataObject.GetData は、データを UTF-8 として取得するようになりました
+
+| | |
+|---|---|
+|説明|.NET Framework 4 を対象とするアプリまたは .NET Framework 4.5.1 以前のバージョンで実行されるアプリでは、DataObject.GetData
は HTML 形式のデータを ASCII 文字列として取得します。 その結果、非 ASCII 文字 (ASCII コードが 0x7F よりも大きい文字) は、次の 2 つのランダムな文字で表されます。 .NET Framework 4.5 またはそれ以降と .NET Framework 4.5.2 で実行を対象とするアプリのDataObject.GetData
0x7F よりも大きい文字を正しく表している utf-8 として HTML 形式のデータを取得します。|
+|提案される解決策|HTML 形式の文字列を使用するエンコーディングの問題に対する回避策 (例: クリップボードから取得した HTML 文字列を に渡して明示的にエンコードすること) を実装し、アプリをバージョン 4 から 4.5 へ再ターゲットしている場合は、その回避策を削除する必要があります。何らかの理由で古い動作を必要とする場合は、アプリのターゲットを .NET Framework 4.0 にしてその動作を得ることができます。|
+|スコープ|エッジ|
+|Version|4.5.2|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/winforms/encoderparameter-ctor-obsolete.md b/includes/migration-guide/retargeting/winforms/encoderparameter-ctor-obsolete.md
new file mode 100644
index 00000000000..cd8ac5d51a8
--- /dev/null
+++ b/includes/migration-guide/retargeting/winforms/encoderparameter-ctor-obsolete.md
@@ -0,0 +1,11 @@
+### EncoderParameter ctor が廃止に
+
+| | |
+|---|---|
+|説明| コンストラクターは廃止され、使用された場合、ビルド警告が発生します。|
+|提案される解決策|コンストラクター は引き続き動作しますが、.NET 4.5 のツールでコードを再コンパイルするときに古いビルド警告を回避するには、コンストラクター を代わりに使用する必要があります。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/winforms/icontobitmap-successfully-converts-icons-with-png-frames-into-bitmap-objects.md b/includes/migration-guide/retargeting/winforms/icontobitmap-successfully-converts-icons-with-png-frames-into-bitmap-objects.md
new file mode 100644
index 00000000000..cc39d585e15
--- /dev/null
+++ b/includes/migration-guide/retargeting/winforms/icontobitmap-successfully-converts-icons-with-png-frames-into-bitmap-objects.md
@@ -0,0 +1,11 @@
+### PNG フレームを含んだアイコンが Icon.ToBitmap によって、Bitmap オブジェクトに正常に変換されます
+
+| | |
+|---|---|
+|説明|以降、.NET Framework 4.6 を対象とするアプリで、メソッドがビットマップ オブジェクトに PNG フレームを含んだアイコンを正常に変換します。 .NET Framework 4.5.2 および以前のバージョンを対象とするアプリで、メソッドがスローされます、アイコン オブジェクトに PNG フレームがある場合は例外です。この変更はアプリを .NET Framework 4.6 を対象として再コンパイルして、特別な処理を実装している、アイコン オブジェクトに PNG フレームがある場合にスローされます。 .NET Framework 4.6 で実行している場合は、正常に変換が行われ、 がスローされることはないため、例外ハンドラーは呼び出されません。|
+|提案される解決策|この動作に不都合がある場合は、次に示す要素を app.config ファイルの <runtime>
セクションに追加することで、以前の動作を維持できます。<AppContextSwitchOverrides
value="Switch.System.Drawing.DontSupportPngFramesInIcons=true" />
app.config ファイルに既に AppContextSwitchOverrides
要素が含まれている場合は、次に示すように新しい値を value 属性にマージする必要があります。<AppContextSwitchOverrides
value="Switch.System.Drawing.DontSupportPngFramesInIcons=true;<previous key>=<previous value>" />
|
+|スコープ|マイナー|
+|Version|4.6|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/winforms/incorrect-implementation-memberdescriptorequals.md b/includes/migration-guide/retargeting/winforms/incorrect-implementation-memberdescriptorequals.md
new file mode 100644
index 00000000000..642c4a21639
--- /dev/null
+++ b/includes/migration-guide/retargeting/winforms/incorrect-implementation-memberdescriptorequals.md
@@ -0,0 +1,11 @@
+### MemberDescriptor.Equals の不適切な実装
+
+| | |
+|---|---|
+|説明|"Equals" メソッドの元の実装では、比較対象のオブジェクトからの 2 種類の文字列プロパティを比較していました (カテゴリ名と説明文字列)。 この修正プログラムでは、最初のオブジェクトの "category" を 2 番目のオブジェクトの "category" と比較し、さらに "description" を "description" と比較します。 MemberDescriptorEqualsReturnsFalseIfEquivalent の構成値を true に設定すると、4.6.2 を対象としている場合に、新しい動作を無効にすることができます。この構成を false に設定すると、ターゲット フレームワークのバージョンが 4.6.2 よりも前の場合に、この修正プログラムを有効にするにすることができます。|
+|提案される解決策|記述子が等しいときに false を返すことがある MemberDescriptor.Equals にアプリケーションが依存していて、.NET Framework のバージョン 4.6.2 を対象とするときは、いくつかのオプションがあります。- Equals メソッドを実行することに加えて、"category" フィールドと "description" フィールドを手動で比較するようにコードを変更します。
- この変更を無効にするには、app.config ファイルに次の値を追加します。
<runtime>
<AppContextSwitchOverrides value="Switch.System.MemberDescriptorEqualsReturnsFalseIfEquivalent=true" />
</runtime>
アプリケーションが .NET Framework 4.6.1 以前のバージョンを対象にしている場合、この変更を無効にするには、app.config ファイルに次の値を追加することで互換性スイッチを false に設定します。<runtime>
<AppContextSwitchOverrides value="Switch.System.MemberDescriptorEqualsReturnsFalseIfEquivalent=false" />
</runtime>
|
+|スコープ|エッジ|
+|Version|4.6.2|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wpf/calls-systemwindowsinputpencontextdisable-on-touch-enabled-systems-may-throw.md b/includes/migration-guide/retargeting/wpf/calls-systemwindowsinputpencontextdisable-on-touch-enabled-systems-may-throw.md
new file mode 100644
index 00000000000..7523a00a1e6
--- /dev/null
+++ b/includes/migration-guide/retargeting/wpf/calls-systemwindowsinputpencontextdisable-on-touch-enabled-systems-may-throw.md
@@ -0,0 +1,10 @@
+### タッチ対応システムで System.Windows.Input.PenContext.Disable を呼び出すと ArgumentException がスローされることがある
+
+| | |
+|---|---|
+|説明|一部の状況では、タッチ対応システムで内部 System.Windows.Intput.PenContext.Disable メソッドを呼び出すと、再入に起因して未処理の T:System.ArgumentException
がスローされることがあります。|
+|提案される解決策|この問題は、.NET Framework 4.7 では対処済みです。 例外を防ぐには、.NET Framework 4.7 以降のバージョンの .NET Framework にアップグレードします。|
+|スコープ|エッジ|
+|Version|4.6.1|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wpf/currentculture-not-preserved-across-wpf-dispatcher-operations.md b/includes/migration-guide/retargeting/wpf/currentculture-not-preserved-across-wpf-dispatcher-operations.md
new file mode 100644
index 00000000000..0db7a775d51
--- /dev/null
+++ b/includes/migration-guide/retargeting/wpf/currentculture-not-preserved-across-wpf-dispatcher-operations.md
@@ -0,0 +1,10 @@
+### CurrentCulture が、複数の WPF ディスパッチャー操作にわたって維持されない
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6 以降では、 内で または に加えられた変更は、そのディスパッチャー操作の終了時に失われます。 同様に、ディスパッチャー操作の外部で または に加えられた変更は、その操作の実行時には反映されない場合があります。具体的に言うと、 と の変更は、WPF UI コールバックと WPF アプリケーション内の他のコードの間でフローされない場合があるということです。これは、 の変更によるものであり、この変更により、.NET Framework 4.6 以降を対象とするアプリでは、 および は実行コンテキストに格納されます。 WPF ディスパッチャー操作は、操作を開始するために使用された実行コンテキストを格納して、操作が完了したときに、以前のコンテキストを復元します。 と がそのコンテキストの一部になったため、ディスパッチャー操作内でそれらに加えられた変更は、操作の外部では保持されません。|
+|提案される解決策|この変更による影響を受けるアプリは、望ましい または をフィールドに格納し、すべてのディスパッチャー操作の本体 (UI イベントのコールバック ハンドラーを含む) で、正しい と が設定されていることを確認することによって回避できます。 または、この WPF の変更の元となっている ExecutionContext の変更は、.NET Framework 4.6 以降を対象とするアプリのみに影響するため、.NET Framework 4.5.2 を対象とすることによって、この問題を回避できます。また、.NET Framework 4.6 以降を対象とするアプリでは、以下の互換性スイッチを設定することでこの問題を回避することができます。AppContext.SetSwitch("Switch.System.Globalization.NoAsyncCurrentCulture", true);
この問題は、.NET Framework 4.6.2 の WPF で修正されました。 また、.NET Frameworks 4.6、4.6.1 では [KB 3139549](https://support.microsoft.com/kb/3139549) を通じて修正されました。 .NET 4.6 以降を対象とするアプリケーションでは WPF アプリケーション (/) の正しい動作が自動的に取得されます。これは、ディスパッチャー操作にわたって維持されます。|
+|スコープ|マイナー|
+|Version|4.6|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wpf/default-hash-algorithm-for-wpf-packagedigitalsignaturemanager-now-sha256.md b/includes/migration-guide/retargeting/wpf/default-hash-algorithm-for-wpf-packagedigitalsignaturemanager-now-sha256.md
new file mode 100644
index 00000000000..63e8252abb0
--- /dev/null
+++ b/includes/migration-guide/retargeting/wpf/default-hash-algorithm-for-wpf-packagedigitalsignaturemanager-now-sha256.md
@@ -0,0 +1,11 @@
+### WPF PackageDigitalSignatureManager の既定のハッシュ アルゴリズムが SHA256 になりました
+
+| | |
+|---|---|
+|説明|System.IO.Packaging.PackageDigitalSignatureManager
は、WPF パッケージに関連してデジタル署名の機能を提供します。 .NET Framework 4.7 以前のバージョンでは、パッケージのパーツへの署名に使用される既定のアルゴリズム () は SHA1 でした。 最近明らかになった SHA1 のセキュリティに関する懸念事項により、この既定値は .NET Framework 4.7.1 で開始する SHA256 に変更されています。 この変更は、XPS ドキュメントを含むあらゆるパッケージの署名に影響します。|
+|提案される解決策|.NET 4.7.1 より前のフレームワーク バージョンを対象とするときにこの変更を利用する開発者または .NET 4.7.1 以上を対象とするときに以前の機能を必要とする開発者は、次の AppContext フラグを適宜設定することができます。 true の値を設定すると、SHA1 が既定のアルゴリズムとして使用され、false の値を設定すると SHA256 が使用されます。<configuration>
<runtime>
<AppContextSwitchOverrides value="Switch.MS.Internal.UseSha1AsDefaultHashAlgorithmForDigitalSignatures=true"/>
</runtime>
</configuration>
|
+|スコープ|エッジ|
+|Version|4.7.1|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wpf/tabcontrol-selectionchanged-event-selectedcontent-property.md b/includes/migration-guide/retargeting/wpf/tabcontrol-selectionchanged-event-selectedcontent-property.md
new file mode 100644
index 00000000000..afa4ef62edd
--- /dev/null
+++ b/includes/migration-guide/retargeting/wpf/tabcontrol-selectionchanged-event-selectedcontent-property.md
@@ -0,0 +1,11 @@
+### TabControl SelectionChanged イベントおよび SelectedContent プロパティ
+
+| | |
+|---|---|
+|説明|.NET Framework 4.7.1、以降のの値を更新、を発生させる前に、プロパティ、イベント、その選択が変更されたときにします。 .NET Framework 4.7 と以前のバージョンでは、イベント後に SelectedContent への更新が発生しました。|
+|提案される解決策|.NET Framework 4.7.1 以降を対象とするアプリでこの変更を無効にし、従来の動作を使用することができます。その場合、アプリケーション構成ファイルの <runtime>
セクションに次の行を追加します。<runtime>
<AppContextSwitchOverrides value="Switch.System.Windows.Controls.TabControl.SelectionPropertiesCanLagBehindSelectionChangedEvent=true" />
</runtime>
.NET Framework 4.7 以前を対象とするものの、.NET Framework 4.7.1 以降で実行されているアプリでは、新しい動作を有効にすることができます。その場合、アプリケーション構成ファイルの <runtime>
セクションに次の行を追加します。<runtime>
<AppContextSwitchOverrides value="Switch.System.Windows.Controls.TabControl.SelectionPropertiesCanLagBehindSelectionChangedEvent=false" />
</runtime>
|
+|スコープ|マイナー|
+|Version|4.7.1|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wpf/two-way-data-binding-property-with-non-public-setter-not-supported.md b/includes/migration-guide/retargeting/wpf/two-way-data-binding-property-with-non-public-setter-not-supported.md
new file mode 100644
index 00000000000..d957f9eeea3
--- /dev/null
+++ b/includes/migration-guide/retargeting/wpf/two-way-data-binding-property-with-non-public-setter-not-supported.md
@@ -0,0 +1,11 @@
+### 非パブリック セッターを持つプロパティへの双方向データ バインドはサポートされません
+
+| | |
+|---|---|
+|説明|パブリック セッターを持たないプロパティへのデータ バインドを試みることは、サポートされるシナリオではありません。 .NET framework 4.5.1 以降では、このシナリオでは がスローされます。 この新しい例外は、具体的に .NET Framework 4.5.1 を対象とするアプリでのみスローされることに注意してください。 アプリが .NET Framework 4.5 をターゲットとしている場合、この呼び出しは許されます。 アプリが特定のバージョンの .NET Framework をターゲットにしていない場合、バインドは一方向として扱われます。|
+|提案される解決策|一方向のバインドを使用するか、プロパティのセッターを公開するように、アプリを更新する必要があります。 または、.NET Framework 4.5 をターゲットにすると、アプリは以前の動作を示すようになります。|
+|スコープ|マイナー|
+|Version|4.5.1|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/wpf/wpf-grid-allocation-space-star-columns.md b/includes/migration-guide/retargeting/wpf/wpf-grid-allocation-space-star-columns.md
new file mode 100644
index 00000000000..9e0dce23648
--- /dev/null
+++ b/includes/migration-guide/retargeting/wpf/wpf-grid-allocation-space-star-columns.md
@@ -0,0 +1,10 @@
+### WPF Grid での *-column への領域の割り当て
+
+| | |
+|---|---|
+|説明|.NET Framework 4.7 以降では、WPF で が *-column に領域を割り当てるために使うアルゴリズムが置き換えられます。 これにより、*-column に割り当てられる実際の幅が、次のようにさまざまな場合で変わります。- 1 つまたは複数の *-column に、その列の比例割り当てを無視する最小値または最大値の幅もある場合 (最小値の幅は、明示的な MinWidth 宣言、または列の内容から取得した暗黙的な最小値に由来する可能性があります。 最大値の幅は、明示的な MaxWidth 宣言にのみ由来します)。
- 1 つまたは複数の *-column で 10^298 を超える非常に大きな *-weight を宣言した場合。
- *-weight が大幅に異なるため、浮動小数点が不安定になる場合 (オーバーフロー、アンダーフロー、精度の低下)。
- レイアウトの丸めが有効で、ディスプレイの実効 DPI が十分に高い場合。
最初の 2 つの場合、新しいアルゴリズムで生成される幅は、以前のアルゴリズムで生成される幅と大幅に異なる可能性があります。最後の場合、違いは最大で 1 から 2 ピクセルです。以前のアルゴリズムには次のバグがありましたが、新しいアルゴリズムで修正されました。- 列への割り当ての合計は、グリッドの幅を超える可能性があります。 この問題は、比例配分が最小サイズ未満の列に領域を割り当てると発生します。 このアルゴリズムでは最小サイズが割り当てられるため、他の列に使用できる領域が減ります。 割り当てる *-column がなくなると、割り当ての合計は大きくなりすぎます。
- 割り当ての合計が、グリッドの幅未満になる可能性があります。 これは、問題 1 と重なる問題で、比例配分共有が最大サイズを超えている列に割り当て、不足を補う *-column が残っていない場合に発生します。
- 2 つの *-column が、その *-weight に比例していない割り当てを受ける可能性があります。 これは問題 1、2 よりも軽度な問題です。*-column A、B、C に (この順序で) 割り当てると、B の比例配分共有はその最小値 (または最大値) に違反します。 前述のように、これによって列 C に使用できる領域が変わり、A よりも比例配分の割り当てが少なく (または多く) なります。
- 非常に大きな重みの列 (10^298 を超える場合) は、すべて 10^298 の重みとして処理されます。 そのような列 (およびやや小さな重みの列) の比例配分の差は考慮されません。
- 無限の重みを持つ列が正しく処理されません。 [実際には重みを無限大に設定することはできませんが、これは人為的な制限です。 割り当てコードは制限を処理しようとしますが、無効なジョブになります。]
- オーバーフロー、アンダーフロー、精度の低下などの浮動小数点精度の問題を回避していますが、いくつかの軽微な問題があります。
- 十分に高い DPI でレイアウトの丸めの調整が不適切です。
新しいアルゴリズムでは、次の条件を満たす結果が生成されます。A. *-column に割り当てられる実際の幅が、幅の最小値未満にならない、また幅の最大値を超えないようにします。B. 最小値または最大値の幅が割り当てられていない各 -column に、その -weight に比例した幅を割り当てます。正確には、2 つの列の幅がそれぞれ x、y と宣言され、いずれの列も最小値の幅または最大値の幅が割り当てられていない場合、各列に割り当てられる実際の幅 v と w は同じ比率の v / w == x / y になります。C. "比例配分" の *-column に割り当てられる幅の合計は、制限された列 (固定、自動、および最小値または最大値の幅が割り当てられた *-column) に割り当てられた後に使用できる領域と同じなります。 たとえば、最小値の幅の合計がグリッドに使用できる幅を超える場合は、ゼロになる可能性があります。D. これらすべてのステートメントは "理想的な" レイアウトを基準に解釈されます。 レイアウトの丸めが有効な場合、実際の幅は理想的な幅と最大 1 ピクセル異なる可能性があります。以前のアルゴリズムでは (A) を考慮していましたが、上記の他の条件は考慮されていませんでした。この記事で取り上げた列と幅のすべての情報は、行と高さにも適用されます。|
+|提案される解決策|.NET Framework 4.7 以降の .NET Framework をターゲットとするアプリの場合、既定で新しいアルゴリズムが使われますが、.NET Framework 4.6.2 以前をターゲットとするアプリは以前のアルゴリズムが使われます。この既定を無視するには、次の構成設定を使います。<runtime>
<AppContextSwitchOverrides value="Switch.System.Windows.Controls.Grid.StarDefinitionsCanExceedAvailableSpace=true" />
</runtime>
値 "true" を設定すると以前のアルゴリズムが選択され、"false" を設定すると新しいアルゴリズムが選択されます。|
+|スコープ|マイナー|
+|Version|4.7|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wpf/wpf-layout-rounding-margins-has-changed.md b/includes/migration-guide/retargeting/wpf/wpf-layout-rounding-margins-has-changed.md
new file mode 100644
index 00000000000..fd3895fbf8a
--- /dev/null
+++ b/includes/migration-guide/retargeting/wpf/wpf-layout-rounding-margins-has-changed.md
@@ -0,0 +1,10 @@
+### WPF レイアウトでの余白の丸め方の変更
+
+| | |
+|---|---|
+|説明|余白、境界線、およびそれらの内部の背景の丸め処理の方法が変更されました。 この変更の結果、以下のようになります。- 要素の幅または高さが最大で 1 ピクセル拡大または縮小することがあります。
- オブジェクトの配置が最大で 1 ピクセル移動することがあります。
- 中央揃えの要素が中央から最大で 1 ピクセル垂直まは水平方向にずれることがあります。
既定では、この新しいレイアウトは .NET Framework の 4.6 を対象とするアプリに対してのみ有効となります。|
+|提案される解決策|この変更はの右端または下端高 Dpi での WPF コントロールのクリッピングを除去する傾向があります、ため、.NET Framework の以前のバージョンを対象と、.NET Framework 4.6 上で実行されているアプリこともできますこの新しい動作を次の行を追加することで、<runtime>
、app.config ファイルのセクション: <AppContextSwitchOverrides value="Switch.MS.Internal.DoNotApplyLayoutRoundingToMarginsAndBorderThickness=false" />
WPF コントロールへの以前のレイアウトのアルゴリズムを使用してレンダリングの目的は、.NET Framework 4.6 を対象するアプリこれを行うには、次の行を追加することによって、 <runtime>
app.config ファイルのセクション<AppContextSwitchOverrides value="Switch.MS.Internal.DoNotApplyLayoutRoundingToMarginsAndBorderThickness=true" />
。|
+|スコープ|マイナー|
+|Version|4.6|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wpf/wpf-pointer-based-touch-stack.md b/includes/migration-guide/retargeting/wpf/wpf-pointer-based-touch-stack.md
new file mode 100644
index 00000000000..6fb003f6444
--- /dev/null
+++ b/includes/migration-guide/retargeting/wpf/wpf-pointer-based-touch-stack.md
@@ -0,0 +1,10 @@
+### WPF ポインター ベースのタッチ スタック
+
+| | |
+|---|---|
+|説明|この変更で、オプションの WM_POINTER ベースの WPF タッチ/スタイラス スタックを有効にする機能が追加されます。 これを明示的に有効にしていない開発者は、WPF タッチ/スタイラス動作の変更を確認できません。オプションの WM_POINTER ベースのタッチ/スタイラス スタックに関する現在の既知の問題を以下に示します。- リアルタイム インクがサポートされない。
- インクと StylusPlugins がまだ機能している間は、UI スレッドで処理されますが、パフォーマンスの低下につながる可能性があります。
- プロモーションの変更により、タッチ/スタイラス イベントからマウス イベントに動作が変更される。
- 操作の動作が異なる場合があります。
- ドラッグ/ドロップでは、タッチ入力の適切なフィードバックが表示されません。
- これはスタイラス入力には影響しません。
- ドラッグ/ドロップは、タッチ/スタイラス イベントで開始できなくなりました。
- そのため、マウス入力が検出されるまで、アプリケーションがハングする可能性があります。
- 代わりに、開発者はマウス イベントからドラッグ アンド ドロップを開始する必要があります。
|
+|提案される解決策|このスタックを有効にする開発者は、アプリケーションの App.config ファイルに次の行を追加/マージできます。<configuration>
<runtime>
<AppContextSwitchOverrides value="Switch.System.Windows.Input.Stylus.EnablePointerSupport=true"/>
</runtime>
</configuration>
これを削除するか、値を false に設定すると、このオプションのスタックがオフになります。このスタックは Windows 10 Creators Update 以降でのみ使用できることに注意してください。|
+|スコープ|エッジ|
+|Version|4.7|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/wpf/wpf-textboxtext-can-be-out-of-sync-with-databinding.md b/includes/migration-guide/retargeting/wpf/wpf-textboxtext-can-be-out-of-sync-with-databinding.md
new file mode 100644
index 00000000000..94144a9945f
--- /dev/null
+++ b/includes/migration-guide/retargeting/wpf/wpf-textboxtext-can-be-out-of-sync-with-databinding.md
@@ -0,0 +1,11 @@
+### WPF TextBox.Text とデータ バインドを非同期にできる
+
+| | |
+|---|---|
+|説明|場合によっては、データ バインディングの書き込み操作中にプロパティが変更された場合、 プロパティにデータ バインディング プロパティ値の以前の値が反映されることがあります。|
+|提案される解決策|これによって生じる悪影響はないはずです。 ただし、 プロパティを false
に設定して、以前の動作を復元することは可能です。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/xml/xml-schema-validation-stricter.md b/includes/migration-guide/retargeting/xml/xml-schema-validation-stricter.md
new file mode 100644
index 00000000000..4207e8bac1c
--- /dev/null
+++ b/includes/migration-guide/retargeting/xml/xml-schema-validation-stricter.md
@@ -0,0 +1,10 @@
+### XML スキーマ検証がより厳格になりました
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 では、XML スキーマ検証が厳格化されました。 xsd:anyURI を使用して mailto プロトコルなどの URI を検証したときに、URI にスペースが入っていると検証は失敗します。 .NET Framework の以前のバージョンでは、検証は成功していました。 この変更は、.NET Framework 4.5 を対象とするアプリケーションにのみ影響します。|
+|提案される解決策|より緩やかな .NET Framework 4.0 の検証が必要な場合、検証アプリケーションはバージョン 4.0 の .NET Framework をターゲットにできます。 もう一度 .NET 4.5 をターゲットにする場合は、無効な URI (およびスペース) が anyURI データ型の属性値として予期されないように、コード レビューを行う必要があります。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/retargeting/xml/xmlwriter-throws-on-invalid-surrogate-pairs.md b/includes/migration-guide/retargeting/xml/xmlwriter-throws-on-invalid-surrogate-pairs.md
new file mode 100644
index 00000000000..48eb392504b
--- /dev/null
+++ b/includes/migration-guide/retargeting/xml/xmlwriter-throws-on-invalid-surrogate-pairs.md
@@ -0,0 +1,11 @@
+### XmlWriter が無効なサロゲート ペアに対してスローされる
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5.2 またはそれ以前のバージョンをターゲットとするアプリケーションの場合、例外フォールバック処理を使用した無効なサロゲート ペアを作成しても、必ず例外がスローされるとは限りません。 .NET Framework 4.6 をターゲットとするアプリでは、無効なサロゲート ペアを作成しようとすると、 がスローされます。|
+|提案される解決策|必要に応じて、.NET Framework 4.5.2 以前をターゲットとすることでこの問題を回避できます。 または、無効なサロゲート ペアを有効な xml に書き込む前に事前処理することもできます。|
+|スコープ|エッジ|
+|Version|4.6|
+|型|再ターゲット中|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/retargeting/xml/xsd-schema-validation-now-correctly-detects-violations-unique-constraints-if.md b/includes/migration-guide/retargeting/xml/xsd-schema-validation-now-correctly-detects-violations-unique-constraints-if.md
new file mode 100644
index 00000000000..c6685f5089c
--- /dev/null
+++ b/includes/migration-guide/retargeting/xml/xsd-schema-validation-now-correctly-detects-violations-unique-constraints-if.md
@@ -0,0 +1,10 @@
+### XSD スキーマ検証は、複合キーが使用され、1 つのキーが空の場合に、一意制約の違反を正しく検出するようになりました
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6 より前のバージョンには、キーの 1 つが空であった場合、XSD 検証で複合キーの一意制約が検出されないというバグがありました。 .NET Framework 4.6 で、この問題は修正されました。 このため、より正しい検証が行われるようになりますが、以前は検証されていた XML の一部が検証されない可能性もあります。|
+|提案される解決策|より緩やかな .NET Framework 4.0 の検証が必要な場合、検証アプリケーションはバージョン 4.5 (またはそれ以前) の .NET Framework をターゲットにできます。 ただし、.NET 4.6 に再ターゲットするときには、コード レビューを行って、重複する複合キー (この問題の説明で述べられているように) の検証を予期していないことを確認する必要があります。|
+|スコープ|エッジ|
+|Version|4.6|
+|型|再ターゲット中|
+
diff --git a/includes/migration-guide/runtime/adonet/adonet-now-attempts-automatically-reconnect-broken-sql-connections.md b/includes/migration-guide/runtime/adonet/adonet-now-attempts-automatically-reconnect-broken-sql-connections.md
new file mode 100644
index 00000000000..f9ecef0b346
--- /dev/null
+++ b/includes/migration-guide/runtime/adonet/adonet-now-attempts-automatically-reconnect-broken-sql-connections.md
@@ -0,0 +1,11 @@
+### ADO.NET では、切断された SQL 接続の再接続が自動的に試行されるようになりました
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5.1 以降、.NET Framework では、切断された SQL 接続の再接続が自動的に試行されます。 通常、これはアプリの安定性を高めますが、再接続時に行動できるよう、接続が失われたことをアプリに認識させる必要があるという極端な状況があります。|
+|提案される解決策|互換性の問題からこの機能が望ましくない場合、接続文字列 (または ) の プロパティを 0 に設定することで無効にできます。|
+|スコープ|エッジ|
+|Version|4.5.1|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/asp/aspnet-mvc-now-escapes-spaces-strings-passed-via-route-parameters.md b/includes/migration-guide/runtime/asp/aspnet-mvc-now-escapes-spaces-strings-passed-via-route-parameters.md
new file mode 100644
index 00000000000..3fc36726006
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/aspnet-mvc-now-escapes-spaces-strings-passed-via-route-parameters.md
@@ -0,0 +1,11 @@
+### ASP.NET MVC は、ルート パラメーターで渡された文字列内のスペースをエスケープするようになりました
+
+| | |
+|---|---|
+|説明|RFC 2396 に準拠するために、ルートからアクション パラメーターを設定するときに、ルートのパスに含まれるスペースがエスケープされるようになりました。 そのため、/controller/action/some data
は以前はルート /controller/action/{data}
し、some data
をデータ パラメーターとして与えましたが、代わりに some%20data
を与えるようになります。|
+|提案される解決策|ルートからの文字列パラメーターをエスケープ解除するように、コードを更新する必要があります。 元の URI が必要な場合は、.OriginalString API でアクセスできます。|
+|スコープ|マイナー|
+|Version|4.5.2|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/asp/gridviews-with-allowcustompaging-set-true-may-fire-pageindexchanging-event.md b/includes/migration-guide/runtime/asp/gridviews-with-allowcustompaging-set-true-may-fire-pageindexchanging-event.md
new file mode 100644
index 00000000000..6d2a8161026
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/gridviews-with-allowcustompaging-set-true-may-fire-pageindexchanging-event.md
@@ -0,0 +1,11 @@
+### AllowCustomPaging が true に設定された GridView では、ビューの最終ページから他に移動するときに、PageIndexChanging イベントが発生する場合がある
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 でのバグのため、 が有効になっている に対して が発生しないことがあります。|
+|提案される解決策|この問題は .NET Framework 4.6 で修正されたため、このバージョンの .NET Framework にアップグレードすることによって対処できます。 回避策として、アプリでは、これらの条件 ( が最終ページで、最後の が と異なる) を満たす Page_Load
で明示的に BindGrid を行うことができます。 または、(カスタム ページングではなく) ページングを許可するようにアプリを変更することもできます。このシナリオでは問題は発生していません。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/asp/httprequestcontentencoding-property-prohibits-utf7.md b/includes/migration-guide/runtime/asp/httprequestcontentencoding-property-prohibits-utf7.md
new file mode 100644
index 00000000000..ae5c134ed08
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/httprequestcontentencoding-property-prohibits-utf7.md
@@ -0,0 +1,11 @@
+### HttpRequest.ContentEncoding プロパティで UTF7 が禁止される
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 以降では、 の本文では UTF-7 エンコードが禁止されます。 UTF-7 データの受信を必要とするアプリケーションのデータが、正しくデコードされない場合があります。|
+|提案される解決策|理想的には、 で UTF-7 エンコードを使用しないようにアプリケーションを更新する必要があります。 または、[](https://msdn.microsoft.com/library/hh975440(v=vs.110).aspx) 要素の aspnet:AllowUtf7RequestContentEncoding
属性を使用して、レガシ動作に戻すことができます。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/asp/httputilityjavascriptstringencode-escapes-ampersand.md b/includes/migration-guide/runtime/asp/httputilityjavascriptstringencode-escapes-ampersand.md
new file mode 100644
index 00000000000..722a76d5fe8
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/httputilityjavascriptstringencode-escapes-ampersand.md
@@ -0,0 +1,11 @@
+### HttpUtility.JavaScriptStringEncode でアンパサンドがエスケープされる
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 以降では、 でアンパサンド (&) 文字がエスケープされます。|
+|提案される解決策|アプリがこのメソッドの以前の動作に依存している場合、構成ファイルの [ASP.NET appSettings 要素](https://msdn.microsoft.com/library/hh975440.aspx) に aspnet:JavaScriptDoNotEncodeAmpersand 設定を追加できます。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/asp/ipad-should-not-be-used-custom-capabilities-file-because-it-now-browser.md b/includes/migration-guide/runtime/asp/ipad-should-not-be-used-custom-capabilities-file-because-it-now-browser.md
new file mode 100644
index 00000000000..89b6e6d572f
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/ipad-should-not-be-used-custom-capabilities-file-because-it-now-browser.md
@@ -0,0 +1,10 @@
+### iPad はブラウザー機能になったため、カスタム機能ファイルでは使用できない
+
+| | |
+|---|---|
+|説明|.NET 4.5 以降では、iPad は既定の ASP.NET ブラウザー機能ファイルの識別子であるため、カスタム機能ファイルでは使用できません。|
+|提案される解決策|iPad 固有の機能が必要な場合は、ユーザー エージェントのマッチングで新しい "IPad" ID を生成するのではなく、定義済みのゲートウェイ refID "IPad" で機能を設定して、iPad の動作を変更する必要があります。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/asp/no-longer-able-set-enableviewstatemac-false.md b/includes/migration-guide/runtime/asp/no-longer-able-set-enableviewstatemac-false.md
new file mode 100644
index 00000000000..9bc27d6aef4
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/no-longer-able-set-enableviewstatemac-false.md
@@ -0,0 +1,10 @@
+### EnableViewStateMac を false に設定できなくなった
+
+| | |
+|---|---|
+|説明|ASP.NET では、開発者は <pages enableViewStateMac="false"/>
または <@Page EnableViewStateMac="false" %>
を指定できなくなりました。 ビュー ステートのメッセージ認証コード (MAC) は、ビュー ステートが埋め込まれたすべての要求に強制されています。 EnableViewStateMac プロパティを明示的に false
に設定するアプリのみが影響を受けます。|
+|提案される解決策|EnableViewStateMac は true であると想定する必要があり、結果としての MAC エラーを解決する必要があります ([このガイダンス](https://support.microsoft.com/kb/2915218)で説明されているように、MAC エラーの原因の詳細によって複数の解決策があります)。|
+|スコープ|Major|
+|Version|4.5.2|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/asp/pageloadcomplete-event-no-longer-causes.md b/includes/migration-guide/runtime/asp/pageloadcomplete-event-no-longer-causes.md
new file mode 100644
index 00000000000..7ba0925d7bc
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/pageloadcomplete-event-no-longer-causes.md
@@ -0,0 +1,10 @@
+### Page.LoadComplete イベントによって、System.Web.UI.WebControls.EntityDataSource コントロールがデータ バインディングを呼び出さなくなりました
+
+| | |
+|---|---|
+|説明| イベントが原因で、 のコントロールがパラメーターの作成/更新/削除に変更を加えるためにデータ バインディングを呼び出すことがなくなりました。 この変更により、データベースへの不要なアクセスが排除され、コントロールの値がリセットされるのを防ぐことができるほか、 や などのように他のデータ コントロールと一貫性の取れた動作が生成されます。 この変更により、アプリケーションが イベントのデータ バインディングの呼び出しに依存するような珍しい状況において、異なる動作が生成されるようになりました。|
+|提案される解決策|データバインドの必要がある場合は、ポストバックの前半であるイベントでデータバインドを手動で呼び出します。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/asp/profiling-aspnet-mvc4-apps-can-lead-fatal-execution-engine-error.md b/includes/migration-guide/runtime/asp/profiling-aspnet-mvc4-apps-can-lead-fatal-execution-engine-error.md
new file mode 100644
index 00000000000..52152c25e5a
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/profiling-aspnet-mvc4-apps-can-lead-fatal-execution-engine-error.md
@@ -0,0 +1,10 @@
+### ASP.Net MVC4 アプリのプロファイリングにより、致命的な実行エンジン エラーが発生する可能性がある
+
+| | |
+|---|---|
+|説明|NGEN/プロファイル アセンブリを使用するプロファイラーにより、起動時にプロファイルされた ASP.NET MVC4 アプリケーションがクラッシュし、"致命的な実行エンジン例外" が示される場合があります。|
+|提案される解決策|この問題は、.NET Framework 4.5.2 で修正されます。 プロファイラーは、イベント マスクで COR_PRF_DISABLE_ALL_NGEN_IMAGES
を指定することで、この問題を回避することもできます。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/asp/sharing-session-state-with-aspnet-stateserver-requires-all-servers-web-farm.md b/includes/migration-guide/runtime/asp/sharing-session-state-with-aspnet-stateserver-requires-all-servers-web-farm.md
new file mode 100644
index 00000000000..48ddda6e9c0
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/sharing-session-state-with-aspnet-stateserver-requires-all-servers-web-farm.md
@@ -0,0 +1,11 @@
+### Asp.Net StateServer とセッション状態を共有するには、Web ファーム内のすべてのサーバーが同じ .NET Framework バージョンを使用する必要があります
+
+| | |
+|---|---|
+|説明| セッション状態を有効にする場合、状態を正しく共有するには、指定の Web ファーム内のすべてのサーバーが同じバージョンの .NET Framework を使用する必要があります。|
+|提案される解決策|同時に状態を共有する Web サーバー上で必ず .NET Framework バージョンのアップグレードを行います。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/asp/webutilityhtmldecode-no-longer-decodes-invalid-input-sequences.md b/includes/migration-guide/runtime/asp/webutilityhtmldecode-no-longer-decodes-invalid-input-sequences.md
new file mode 100644
index 00000000000..80b8b15c8c7
--- /dev/null
+++ b/includes/migration-guide/runtime/asp/webutilityhtmldecode-no-longer-decodes-invalid-input-sequences.md
@@ -0,0 +1,11 @@
+### WebUtility.HtmlDecode が無効な入力シーケンスをデコードしなくなった
+
+| | |
+|---|---|
+|説明|既定では、デコード メソッドによって無効な入力シーケンスが無効な UTF-16 文字列にデコードされることがなくなりました。 代わりに、元の入力が返されます。|
+|提案される解決策|デコーダーの出力の変更は、UTF-16 データではなくバイナリ データを文字列に格納した場合にのみ影響があります。 明示的にこの動作を制御するには、[appSettings](~/docs/framework/configure-apps/file-schema/appsettings/index.md) 要素の aspnet:AllowRelaxedUnicodeDecoding
属性を true
に設定して従来の動作を有効にするか、false
に設定して現在の動作を有効にします。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/appdomainsetupdynamicbase-no-longer-randomized-by.md b/includes/migration-guide/runtime/core/appdomainsetupdynamicbase-no-longer-randomized-by.md
new file mode 100644
index 00000000000..c2cf7667acc
--- /dev/null
+++ b/includes/migration-guide/runtime/core/appdomainsetupdynamicbase-no-longer-randomized-by.md
@@ -0,0 +1,11 @@
+### AppDomainSetup.DynamicBase が UseRandomizedStringHashAlgorithm でランダム化されなくなった
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6 より前では、UseRandomizedStringHashAlgorithm がアプリの構成ファイルで有効になっている場合、 の値がアプリケーション ドメイン間、またはプロセス間でランダム化されます。 .NET Framework 4.6 以降では、 は実行されているアプリの異なるインスタンス間、および異なるアプリ ドメイン間で安定した結果を返します。 それでも動的ベースはアプリによって異なります。この変更では、同じアプリの異なるインスタンスのランダムな名前付け要素のみが削除されます。|
+|提案される解決策|UseRandomizedStringHashAlgorithm
を有効にすると、 がランダム化されなくなることに注意してください。 ランダム ベースが必要な場合は、この API を使用するのではなく、アプリのコードで生成する必要があります。|
+|スコープ|エッジ|
+|Version|4.6|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/assemblies-compiled-with-regexcompiletoassembly-breaks-between-40-45.md b/includes/migration-guide/runtime/core/assemblies-compiled-with-regexcompiletoassembly-breaks-between-40-45.md
new file mode 100644
index 00000000000..1d7e8911c5f
--- /dev/null
+++ b/includes/migration-guide/runtime/core/assemblies-compiled-with-regexcompiletoassembly-breaks-between-40-45.md
@@ -0,0 +1,11 @@
+### Regex.CompileToAssembly でコンパイルされたアセンブリは 4.0 と 4.5 の間で区別されます
+
+| | |
+|---|---|
+|説明|コンパイル済みの正規表現のアセンブリが .NET Framework 4.5 でビルドされ、.NET Framework 4 を対象としている場合、.NET Framework 4 がインストールされているシステム上でそのアセンブリの正規表現の 1 つを使用しようとすると、例外をスローします。|
+|提案される解決策|この問題を回避するには、次のいずれかの方法を実行します。- .NET Framework 4 を使用して正規表現を含むアセンブリをビルドします。
- 解釈される正規表現を使用します。
|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/blockingcollectionlttgttrytakefromany-does-not-throw-anymore.md b/includes/migration-guide/runtime/core/blockingcollectionlttgttrytakefromany-does-not-throw-anymore.md
new file mode 100644
index 00000000000..a5f6cf493f1
--- /dev/null
+++ b/includes/migration-guide/runtime/core/blockingcollectionlttgttrytakefromany-does-not-throw-anymore.md
@@ -0,0 +1,11 @@
+### BlockingCollection<T>.TryTakeFromAny がスローしなくなった
+
+| | |
+|---|---|
+|説明|入力コレクションの 1 つに完了のマークが付けられた場合、 -1 を返さず、例外をスローしなくなりました。 この変更の結果、コレクションの 1 つが空であったり完了していても、他のコレクションに取得できる項目がある場合にコレクションで作業をすることができるようになりました。|
+|提案される解決策|-1 を返す TryTakeFromAny またはスローする TakeFromAny が制御フロー目的で使用されていた場合、ブロッキング コレクションが完了する場合、そのようなコードは、その条件を検出するように .Any(b => b.IsCompleted)
を使用するように変更される必要があります。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/calling-attributegetcustomattributes-on-an-indexer-property-no-longer-throws.md b/includes/migration-guide/runtime/core/calling-attributegetcustomattributes-on-an-indexer-property-no-longer-throws.md
new file mode 100644
index 00000000000..b070320707d
--- /dev/null
+++ b/includes/migration-guide/runtime/core/calling-attributegetcustomattributes-on-an-indexer-property-no-longer-throws.md
@@ -0,0 +1,11 @@
+### インデクサー プロパティに対して Attribute.GetCustomAttributes を呼び出しても、インデックスの型によって、あいまいさを解決できる場合、AmbiguousMatchException はスローされなくなった
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6 より以前には、インデックスの型のみが別のプロパティと異なるインデクサ― プロパティに対して GetCustomAttribute(s)
を呼び出すと、 になりました。 .NET Framework 4.6 からは、プロパティの属性が正しく返されます。|
+|提案される解決策|GetCustomAttribute(s) が、より頻繁に機能するようになったことに注意してください。 アプリが に依存していた場合は、代わりにリフレクションを使用して、複数のインデクサーを明示的に検索する必要があります。|
+|スコープ|エッジ|
+|Version|4.6|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/compiler-support-for-type-forwarding-when-multi-targeting-mscorlib.md b/includes/migration-guide/runtime/core/compiler-support-for-type-forwarding-when-multi-targeting-mscorlib.md
new file mode 100644
index 00000000000..e051e4f3070
--- /dev/null
+++ b/includes/migration-guide/runtime/core/compiler-support-for-type-forwarding-when-multi-targeting-mscorlib.md
@@ -0,0 +1,9 @@
+### mscorlib の複数バージョン対応時の型転送のコンパイラ サポート
+
+| | |
+|---|---|
+|説明|新しい CodeDOM の機能を使用すると、mscorlib.dll の .NET Framework 4.5 バージョンではなく、mscorlib.dll の対象バージョンに対してコンパイルできるようになります。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/core/concurrentqueuelttgttrypeek-can-return-an-erroneous-null-via-its-out.md b/includes/migration-guide/runtime/core/concurrentqueuelttgttrypeek-can-return-an-erroneous-null-via-its-out.md
new file mode 100644
index 00000000000..0792578517d
--- /dev/null
+++ b/includes/migration-guide/runtime/core/concurrentqueuelttgttrypeek-can-return-an-erroneous-null-via-its-out.md
@@ -0,0 +1,11 @@
+### ConcurrentQueue<T>.TryPeek は、出力パラメーターを介して誤った null を返すことがあります
+
+| | |
+|---|---|
+|説明|一部のマルチ スレッド シナリオでは、 は true を返すことができますが、出力パラメーターに (正しいピーク値の代わりに) null 値を入れることがあります。|
+|提案される解決策|この問題は、.NET Framework 4.5.1 で修正されます。 この Framework にアップグレードすると、問題が解決されます。|
+|スコープ|Major|
+|バージョン|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/corprfgcroothandles-are-not-being-enumerated-by-profilers.md b/includes/migration-guide/runtime/core/corprfgcroothandles-are-not-being-enumerated-by-profilers.md
new file mode 100644
index 00000000000..c814f7e67fe
--- /dev/null
+++ b/includes/migration-guide/runtime/core/corprfgcroothandles-are-not-being-enumerated-by-profilers.md
@@ -0,0 +1,10 @@
+### COR_PRF_GC_ROOT_HANDLE がプロファイラーで列挙されていない
+
+| | |
+|---|---|
+|説明|.NET Framework v4.5.1 では、プロファイル API RootReferences2()
が正しく COR_PRF_GC_ROOT_HANDLE
を返しません (代わりに、COR_PRF_GC_ROOT_OTHER
として返される)。 この問題は、.NET Framework 4.6 以降で修正されています。|
+|提案される解決策|この問題は .NET Framework 4.6 で修正されたため、このバージョンの .NET Framework にアップグレードすることによって対処できます。|
+|スコープ|マイナー|
+|Version|4.5.1|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/core/deserialization-objects-across-appdomains-can-fail.md b/includes/migration-guide/runtime/core/deserialization-objects-across-appdomains-can-fail.md
new file mode 100644
index 00000000000..f5853fbb38a
--- /dev/null
+++ b/includes/migration-guide/runtime/core/deserialization-objects-across-appdomains-can-fail.md
@@ -0,0 +1,10 @@
+### アプリ ドメイン全体でのオブジェクトの逆シリアル化に失敗する可能性がある
+
+| | |
+|---|---|
+|説明|場合によっては、アプリが異なるアプリケーション ベースを持つ複数のアプリ ドメインを使用すると、アプリ ドメイン間で論理呼び出しコンテキストのオブジェクトを逆シリアル化しようとして、例外がスローされます。|
+|提案される解決策|「[軽減策: アプリ ドメイン全体でのオブジェクトの逆シリアル化](~/docs/framework/migration-guide/mitigation-deserialization-of-objects-across-app-domains.md)」を参照してください。|
+|スコープ|エッジ|
+|Version|4.5.1|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/core/etw-eventlisteners-do-not-capture-events-from-providers-with-explicit.md b/includes/migration-guide/runtime/core/etw-eventlisteners-do-not-capture-events-from-providers-with-explicit.md
new file mode 100644
index 00000000000..196e302b8cc
--- /dev/null
+++ b/includes/migration-guide/runtime/core/etw-eventlisteners-do-not-capture-events-from-providers-with-explicit.md
@@ -0,0 +1,11 @@
+### ETW EventListeners は、明示的なキーワードを持つプロバイダーからのイベント (TPL プロバイダーなど) をキャプチャしません
+
+| | |
+|---|---|
+|説明|空白のキーワード マスクを持つ ETW EventListeners は、明示的なキーワードを持つプロバイダーからのイベントを正しくキャプチャしません。 .NET Framework 4.5 では、TPL プロバイダーは、明示的なキーワードを提供するようになり、この問題が発生しました。 .NET Framework 4.6 では、EventListeners が更新され、この問題は修正されました。|
+|提案される解決策|この問題を回避するには、 の呼び出しを、使用する "任意のキーワード" マスクを明示的に指定する EnableEvents オーバーロード (EnableEvents(eventSource, level, unchecked((EventKeywords)0xFFFFffffFFFFffff))
) の呼び出しに置換します。または、この問題は .NET Framework 4.6 で修正されたため、このバージョンの .NET Framework にアップグレードすることによって対処できます。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/eventlistener-truncates-strings-with-embedded-nulls.md b/includes/migration-guide/runtime/core/eventlistener-truncates-strings-with-embedded-nulls.md
new file mode 100644
index 00000000000..e7cf7fd617a
--- /dev/null
+++ b/includes/migration-guide/runtime/core/eventlistener-truncates-strings-with-embedded-nulls.md
@@ -0,0 +1,11 @@
+### EventListener は、null が埋め込まれた文字列を切り捨てる
+
+| | |
+|---|---|
+|説明| は、埋め込まれた null のある文字列を切り捨てます。 null 文字は クラスでサポートされません。 変更は、プロセスの データを読み取るために を使用し、区切り記号として null 文字を使用するアプリにのみ影響します。|
+|提案される解決策|可能な場合は、埋め込まれた null 文字を使用しないように データを更新する必要があります。|
+|スコープ|エッジ|
+|Version|4.5.1|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/eventsourcewriteevent-impls-must-pass-writeevent-same-parameters-that-it.md b/includes/migration-guide/runtime/core/eventsourcewriteevent-impls-must-pass-writeevent-same-parameters-that-it.md
new file mode 100644
index 00000000000..730edd72424
--- /dev/null
+++ b/includes/migration-guide/runtime/core/eventsourcewriteevent-impls-must-pass-writeevent-same-parameters-that-it.md
@@ -0,0 +1,10 @@
+### EventSource.WriteEvent impls は、受け取ったのと同じパラメーター (と ID) を WriteEvent に渡す必要がある
+
+| | |
+|---|---|
+|説明|ランタイムは次の内容を指定するコントラクトを強制するようになりました: ETW イベント メソッドを定義する から派生するクラスは、ETW イベント メソッドが渡された同じ引数が続くイベント ID の基底クラス EventSource.WriteEvent
メソッドを呼び出す必要があります。|
+|提案される解決策| 例外は、 がこのコントラクトに違反するイベント ソースのプロセスの データを読み取るときに、スローされます。|
+|スコープ|マイナー|
+|Version|4.5.1|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/core/exceptions-during-unobserved-processing-systemthreadingtaskstask-no-longer.md b/includes/migration-guide/runtime/core/exceptions-during-unobserved-processing-systemthreadingtaskstask-no-longer.md
new file mode 100644
index 00000000000..8b39e886f94
--- /dev/null
+++ b/includes/migration-guide/runtime/core/exceptions-during-unobserved-processing-systemthreadingtaskstask-no-longer.md
@@ -0,0 +1,11 @@
+### System.Threading.Tasks.Task で監視されていない処理中の例外が、ファイナライザー スレッドに伝播されなくなった
+
+| | |
+|---|---|
+|説明| クラスは非同期操作を表すため、非同期処理中に発生する重大ではない例外がすべてキャッチされます。 .NET Framework 4.5 では、例外が監視されていず、コードがタスクを待機していない場合、例外はファイナライザー スレッドに伝播されなくなり、ガベージ コレクション時にプロセスをクラッシュします。 この変更により、Task クラスを使用して、監視されていない非同期処理を実行するアプリケーションの信頼性が向上します。|
+|提案される解決策|アプリが、監視されていない非同期例外のファイナライザー スレッドへの伝播に依存している場合、 イベントの適切なハンドラーを提供することによって、または[ランタイム構成要素](~/docs/framework/configure-apps/file-schema/runtime/throwunobservedtaskexceptions-element.md)を設定することによって、以前の動作を復元できます。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/listsort-algorithm-changed.md b/includes/migration-guide/runtime/core/listsort-algorithm-changed.md
new file mode 100644
index 00000000000..2a1d8134fa1
--- /dev/null
+++ b/includes/migration-guide/runtime/core/listsort-algorithm-changed.md
@@ -0,0 +1,11 @@
+### List.Sort アルゴリズムが変更された
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 以降では、 の並べ替えアルゴリズムが (クイック並べ替えではなく、内省的な並べ替えになるように) 変更されました。 の並べ替えは安定しますが、この変更により、さまざまなシナリオが不安定な方法で並べ替えられる可能性があります。 これは単に、同等の項目が API の後続の呼び出しで異なる順序で並べ替えられる可能性があることを意味します。|
+|提案される解決策|以前の並べ替えアルゴリズムも不安定であるため (ただし、方法は若干異なる)、特定の順序で常に並べ替える同等の項目に依存するコードがあってはなりません。 それに依存していて、以前の動作で問題がないコードのインスタンスが存在する場合は、適切な順序で項目を決定論的に並べ替える比較子を使用するようにそのコードを更新する必要があります。|
+|スコープ|透明|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/marshalsizeof-marshalptrtostructure-overloads-break-dynamic-code.md b/includes/migration-guide/runtime/core/marshalsizeof-marshalptrtostructure-overloads-break-dynamic-code.md
new file mode 100644
index 00000000000..c348669c73c
--- /dev/null
+++ b/includes/migration-guide/runtime/core/marshalsizeof-marshalptrtostructure-overloads-break-dynamic-code.md
@@ -0,0 +1,10 @@
+### Marshal.SizeOf および Marshal.PtrToStructure オーバー ロードがダイナミック コードを中断する
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5.1 以降では、メソッド 、、、、、または への動的なバインドを (たとえば、Windows PowerShell、IronPython、または C# のダイナミック キーワードを使用して) 行うと、これらのメソッドの新しいオーバーロードが追加され、スクリプト エンジンにとってあいまいなことがあるため、MethodInvocationExceptions
になります。|
+|提案される解決策|使用するオーバーロードを明確に示すように、スクリプトを更新します。 これは、一般に、メソッドの型パラメーターを として明示的にキャストすることによって行われます。 この問題の回避方法の詳細と例については、[このリンク](https://support.microsoft.com/kb/2909958/) を参照してください。|
+|スコープ|マイナー|
+|Version|4.5.1|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/core/missing-target-framework-moniker-results-40-behavior.md b/includes/migration-guide/runtime/core/missing-target-framework-moniker-results-40-behavior.md
new file mode 100644
index 00000000000..00dfd65895f
--- /dev/null
+++ b/includes/migration-guide/runtime/core/missing-target-framework-moniker-results-40-behavior.md
@@ -0,0 +1,10 @@
+### ターゲット フレームワーク モニカーがないと、4.0 の動作になる
+
+| | |
+|---|---|
+|説明|アセンブリ レベルで が適用されていないアプリケーションは、自動的に .NET Framework 4.0 のセマンティクス (quirks) を使用して実行します。 高い品質を確保するには、すべてのバイナリを、ビルドされた .NET Framework のバージョンを示す で明示的に属性指定することをお勧めします。 プロジェクト ファイルでターゲット フレームワーク モニカーを使用すると、MSBuid は を自動的に適用します。|
+|提案される解決策| は、属性をアセンブリに直接追加するか、[プロジェクト ファイルで、または Visual Studio のプロジェクト プロパティ GUI](http://blogs.msdn.com/b/visualstudio/archive/2010/05/19/visual-studio- managed-multi-targeting-part-1-concepts-target-framework-moniker-target-framework.aspx) でターゲット フレームワークを指定することによって指定する必要があります。|
+|スコープ|Major|
+|バージョン|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/core/persian-calendar-now-uses-hijri-solar-algorithm.md b/includes/migration-guide/runtime/core/persian-calendar-now-uses-hijri-solar-algorithm.md
new file mode 100644
index 00000000000..0ce82c8063d
--- /dev/null
+++ b/includes/migration-guide/runtime/core/persian-calendar-now-uses-hijri-solar-algorithm.md
@@ -0,0 +1,11 @@
+### ペルシャ暦でイスラム暦の太陽アルゴリズムが使用されるようになった
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6 以降では、 クラスでイスラム暦の太陽アルゴリズムが使用されます。 と他のカレンダーの間で日付を変換すると、.NET Framework 4.6 以降では、1800 年より前か 2023 年 (グレゴリオ暦) よりも後の日付について、わずかに異なる結果になることがあります。また、 は March 22, 0622 instead of March 21, 0622
になります。|
+|提案される解決策|.NET 4.6 で PersianCalendar を使用するときには、一部の早い日付または遅い日付に若干の差が生じる場合があることに注意してください。 また、異なるバージョンの .NET Framework で実行する可能性のあるプロセス間で日付をシリアル化するときには、PersianCalendar の日付文字列として格納しないでください (これらの値が異なる場合があるため)。|
+|スコープ|マイナー|
+|Version|4.6|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/reflection-objects-can-no-longer-be-passed-from-managed-code-out-of-process.md b/includes/migration-guide/runtime/core/reflection-objects-can-no-longer-be-passed-from-managed-code-out-of-process.md
new file mode 100644
index 00000000000..9328013dba6
--- /dev/null
+++ b/includes/migration-guide/runtime/core/reflection-objects-can-no-longer-be-passed-from-managed-code-out-of-process.md
@@ -0,0 +1,10 @@
+### リフレクション オブジェクトが、マネージド コードからアウト プロセス DCOM クライアントに渡されなくなった
+
+| | |
+|---|---|
+|説明|リフレクション オブジェクトはマネージ コードからアウト プロセス DCOM クライアントに渡されなくなりました。 影響を受ける型は次のとおりです。オブジェクトの IMarshal
の呼び出しは E_NOINTERFACE
を返します。|
+|提案される解決策|非リフレクション オブジェクトで動作するように、マーシャリング コードを更新します。|
+|スコープ|マイナー|
+|Version|4.6|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/core/some-net-apis-cause-first-chance-handled-entrypointnotfoundexceptions.md b/includes/migration-guide/runtime/core/some-net-apis-cause-first-chance-handled-entrypointnotfoundexceptions.md
new file mode 100644
index 00000000000..d8a56445687
--- /dev/null
+++ b/includes/migration-guide/runtime/core/some-net-apis-cause-first-chance-handled-entrypointnotfoundexceptions.md
@@ -0,0 +1,11 @@
+### 一部の .NET API がファースト チャンス (処理済み) EntryPointNotFoundExceptions の原因になります
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 では、少数の .NET メソッドが、ファースト チャンス をスローするようになりました。 これらの例外は .NET Framework 内で処理されますが、ファースト チャンス例外を予期していないテスト自動化を中断することがありました。 これらと同じ API は、HighVersionLie が有効なとき、一部の ApiVerifier シナリオを中断させます。|
+|提案される解決策|このバグは、.NET Framework 4.5.1 にアップグレードすることによって回避できます。 または、ファースト チャンス で中断しないように、テスト自動化を更新できます。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/systemthreadingtaskstask-no-longer-throw-objectdisposedexception-after.md b/includes/migration-guide/runtime/core/systemthreadingtaskstask-no-longer-throw-objectdisposedexception-after.md
new file mode 100644
index 00000000000..31dd618e58c
--- /dev/null
+++ b/includes/migration-guide/runtime/core/systemthreadingtaskstask-no-longer-throw-objectdisposedexception-after.md
@@ -0,0 +1,10 @@
+### System.Threading.Tasks.Task は、オブジェクトが破棄された後、ObjectDisposedException をスローしなくなりました
+
+| | |
+|---|---|
+|説明|を除き、 メソッドでオブジェクトが破棄された後も の例外がスローされることがなくなりました。この変更により、キャッシュされたタスクを使用できるようになりました。 たとえば、メソッドで新しいタスクを割り当てる代わりに、既に完了した操作を表す、キャッシュされたタスクを返すことができます。 これは、タスクの任意のコンシューマーによって破棄されてしまうと、使用不可能になってしまう以前の .NET Framework のバージョンでは不可能でした。|
+|提案される解決策|オブジェクトが破棄されたとき、Task メソッドが をスローしなくなったことに注意してください。 アプリが、タスクが破棄されたことを確認するために、この例外に依存していた場合は、 を使用してタスクのステータスを明示的に確認するように、アプリを更新する必要があります。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/core/systemuri-escaping-now-supports-rfc-3986.md b/includes/migration-guide/runtime/core/systemuri-escaping-now-supports-rfc-3986.md
new file mode 100644
index 00000000000..e5425d54c04
--- /dev/null
+++ b/includes/migration-guide/runtime/core/systemuri-escaping-now-supports-rfc-3986.md
@@ -0,0 +1,11 @@
+### System.Uri エスケープで RFC 3986 がサポート対象に
+
+| | |
+|---|---|
+|説明|URI エスケープは、.NET 4.5 で、[RFC 3986](http://tools.ietf.org/html/rfc3986)をサポートするように変更されました。 具体的な変更内容:- は、予約されている文字を RFC 3986 に基づいてエスケープします。
- は、予約されている文字をエスケープしません。
- は、無効なエスケープ シーケンスが発生した場合に例外をスローしません。
- 予約されていないエスケープ文字はエスケープ解除されます。
|
+|提案される解決策|- 無効なエスケープ シーケンスの場合、 のスローに依存しないように、アプリケーションを更新します。 このようなシーケンスは、直接削除する必要があります。
- 同様に、エスケープおよびエスケープ解除された URI とデータ文字列は、.NET 4.0 と .NET 4.5 で異なる場合があるため、.NET のバージョン間で直接比較しないでください。 代わりに、1 つの .NET バージョンで解析と正規化を行ってから比較してください。
|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/targetframeworkname-for-default-app-domain-no-longer-defaults-null-if-not.md b/includes/migration-guide/runtime/core/targetframeworkname-for-default-app-domain-no-longer-defaults-null-if-not.md
new file mode 100644
index 00000000000..76bed8f9823
--- /dev/null
+++ b/includes/migration-guide/runtime/core/targetframeworkname-for-default-app-domain-no-longer-defaults-null-if-not.md
@@ -0,0 +1,11 @@
+### 既定のアプリケーション ドメインの TargetFrameworkName は、設定されなかった場合、既定で null に設定されなくなった
+
+| | |
+|---|---|
+|説明| は、以前は、明示的に設定されない限り、既定のアプリケーション ドメインでは null でした。 4.6 以降では、既定のアプリケーション ドメインの プロパティは、TargetFrameworkAttribute (ある場合) から派生された既定値を持ちます。 既定以外のアプリケーション ドメインは、明示的にオーバーライドされない限り、既定のアプリケーション ドメイン (4.6 では既定で null に設定されない) から を継承し続けます。|
+|提案される解決策| が既定で null に設定されることに依然しないように、コードを更新する必要があります。 このプロパティが引き続き null として評価される必要がある場合、明示的にその値に設定できます。|
+|スコープ|エッジ|
+|Version|4.6|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/core/winrt-stream-adapters-no-long-call-flushasync-automatically-on-close.md b/includes/migration-guide/runtime/core/winrt-stream-adapters-no-long-call-flushasync-automatically-on-close.md
new file mode 100644
index 00000000000..a1c96150823
--- /dev/null
+++ b/includes/migration-guide/runtime/core/winrt-stream-adapters-no-long-call-flushasync-automatically-on-close.md
@@ -0,0 +1,10 @@
+### 終了時に WinRT ストリーム アダプターで FlushAsync が自動的に呼び出されなくなりました
+
+| | |
+|---|---|
+|説明|Windows ストア アプリの Windows ランタイム ストリーム アダプターで、Dispose メソッドから FlushAsync メソッドが呼び出されなくなりました。|
+|提案される解決策|この変更は透過的である必要があります。 開発者は次のようなコードを記述して以前の動作を復元できます。using (var stream = GetWindowsRuntimeStream() as Stream)
{
// do something
await stream.FlushAsync();
}
|
+|スコープ|透明|
+|Version|4.5.1|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/core/x509certificate2tostringbool-does-not-throw-now-when-net-cannot-handle.md b/includes/migration-guide/runtime/core/x509certificate2tostringbool-does-not-throw-now-when-net-cannot-handle.md
new file mode 100644
index 00000000000..6b6c7f4b7bc
--- /dev/null
+++ b/includes/migration-guide/runtime/core/x509certificate2tostringbool-does-not-throw-now-when-net-cannot-handle.md
@@ -0,0 +1,11 @@
+### .NET で証明書を処理できないときに、X509Certificate2.ToString(bool) がスローしなくなった
+
+| | |
+|---|---|
+|説明|以前は、このメソッドは、verbose パラメーターとして true
が渡され、.NET Framework ではサポートされない証明書がインストールされていた場合、スローしました。 現在は、メソッドは成功し、証明書のアクセス不能部分を省いた有効な文字列を返します。|
+|提案される解決策| に依存しているコードは、以前は API がスローしていたような場合には、返される文字列から一部の証明書データ (公開鍵、秘密鍵、拡張子など) が除外されることを予期するように更新する必要があります。|
+|スコープ|エッジ|
+|Version|4.6|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/data/attempting-tcpip-connection-sql-server-database-that-resolves-localhost.md b/includes/migration-guide/runtime/data/attempting-tcpip-connection-sql-server-database-that-resolves-localhost.md
new file mode 100644
index 00000000000..5681153e879
--- /dev/null
+++ b/includes/migration-guide/runtime/data/attempting-tcpip-connection-sql-server-database-that-resolves-localhost.md
@@ -0,0 +1,10 @@
+### `localhost` に解決される SQL Server データベースへの TCP/IP 接続の試みが失敗します
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6 および 4.6.1 で、localhost
に解決される SQL Server データベースへの TCP/IP 接続の試みが次のエラーで失敗していました: "SQL Server への接続を確立しているときにネットワーク関連またはインスタンス固有のエラーが発生しました。 サーバーが見つからないかアクセスできません。 インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。 (プロバイダー: SQL ネットワーク インターフェイス、エラー: 26 - 指定されたサーバーまたはインスタンスの位置を特定しているときにエラーが発生しました)"。|
+|提案される解決策|この問題は修正済みであり、.NET Framework 4.6.2 では以前の動作に戻っています。 localhost
に解決される SQL Server データベースに接続するには、.NET Framework 4.6.2 にアップグレードします。|
+|スコープ|マイナー|
+|Version|4.6|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/data/connection-pool-blocking-period-for-azure-sql-databases-removed.md b/includes/migration-guide/runtime/data/connection-pool-blocking-period-for-azure-sql-databases-removed.md
new file mode 100644
index 00000000000..30b3658a109
--- /dev/null
+++ b/includes/migration-guide/runtime/data/connection-pool-blocking-period-for-azure-sql-databases-removed.md
@@ -0,0 +1,11 @@
+### Azure SQL データベースの接続プールのブロック期間が削除される
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6.2 以降では、既知の Azure SQL データベースへの接続確立要求の場合 (*.database.windows.net、*.database.chinacloudapi.cn、*.database.usgovcloudapi.net、*.database.cloudapi.de)、接続プールのブロック期間が削除され、接続確立のエラーはキャッシュされません。 接続オープン要求の再試行は、一時的な接続エラーのほぼすぐ後に発生します。 この変更により、Azure SQL データベースへの接続確立がすぐに再試行するされるため、クラウド対応アプリケーションのパフォーマンスが向上します。 他のすべての接続試行中に接続プールのブロック期間は適用するのには続行されます。 .NET Framework 4.6.1 以前のバージョンで、アプリでは、データベースに接続するときに一時的な接続エラーが発生したときに、接続試行を再試行できません早すぎると、接続プールが、エラーをキャッシュし、1 を 5 秒間に再スローされます。1 分です。 詳しくは、「[SQL Server の接続プール (ADO.NET)](~/docs/framework/data/adonet/sql-server-connection-pooling.md)」をご覧ください。 この動作は、Azure SQL データベースへの接続時に問題となります。多くの場合、一時的なエラーが発生し、通常数秒内に回復します。 接続プールのブロック機能を使うと、データベースが使用可能で、アプリが数秒以内にレンダリングする必要がある場合でも、アプリは長期間データベースに接続できません。|
+|提案される解決策|この動作が望ましくない場合は、.NET Framework 4.6.2 で導入された プロパティを設定することで、接続プールのブロック期間を構成できます。 プロパティ値が 列挙型のメンバーである場合、次の 3 つの値のいずれかを使用できます。 プロパティを に設定して、以前の動作を復元することができます。|
+|スコープ|マイナー|
+|Version|4.6.2|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/data/sqlbulkcopy-uses-destination-column-encoding-for-strings.md b/includes/migration-guide/runtime/data/sqlbulkcopy-uses-destination-column-encoding-for-strings.md
new file mode 100644
index 00000000000..333ab2ecc24
--- /dev/null
+++ b/includes/migration-guide/runtime/data/sqlbulkcopy-uses-destination-column-encoding-for-strings.md
@@ -0,0 +1,11 @@
+### SqlBulkCopy で文字列に挿入先の列エンコードが使用される
+
+| | |
+|---|---|
+|説明|データを列に挿入する場合、 は VARCHAR
と CHAR
の型の既定エンコードではなく、挿入先の列のエンコードを使用します。 この変更により、挿入先の列が既定のエンコードを使用しない場合に、既定のエンコードを使用することによって発生するデータ破損の可能性がなくなります。 まれに、エンコードに変更を加えることによって、挿入先の列に収まりきらない大きいデータが生成された場合に、既存のアプリケーションで SqlException の例外がスローされることがあります。|
+|提案される解決策| では、エンコードが異なるため、データは破損しなくなると予想します。 挿入先の列のサイズ制限に近づいている文字列がコピーされている場合、データの事前エンコード (コピーして挿入先の行にデータが収まることを確認するため) や のキャッチが必要になることがあります。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/data/sqlconnection-can-no-longer-connect-sql-server-1997-databases-using-via.md b/includes/migration-guide/runtime/data/sqlconnection-can-no-longer-connect-sql-server-1997-databases-using-via.md
new file mode 100644
index 00000000000..7f9de02e72a
--- /dev/null
+++ b/includes/migration-guide/runtime/data/sqlconnection-can-no-longer-connect-sql-server-1997-databases-using-via.md
@@ -0,0 +1,11 @@
+### SqlConnection は VIA アダプターを使用して SQL Server 1997 またはデータベースに接続できなくなりました
+
+| | |
+|---|---|
+|説明|[仮想インターフェイス アダプター (VIA) プロトコル](https://technet.microsoft.com/library/ms191229%28v=sql.105%29.aspx)を使用した SQL Server データベースへの接続はサポートされなくなりました。 SQL Server データベースへの接続に使用されるプロトコルは、接続文字列で表示されます。 VIA 接続には via:<servername> が含まれます。 このアプリが VIA 以外のプロトコル (tcp: や np: など) を介して SQL に接続される場合、破壊的変更は検出されません。また、SQL Server 7 (1997) への接続がサポートされなくなります。|
+|提案される解決策|VIA プロトコルは推奨されていないので、SQL データベースに接続するには別のプロトコルを使用する必要があります。 最も一般的に使用されるプロトコルは TCP/IP です。 TCP/IP プロトコルを有効にするための手順については、[こちら](https://msdn.microsoft.com/library/bb909712.aspx)を参照してください。 データベースへのアクセスがイントラネット内からに限定されていて、ネットワーク速度が遅い場合は、共有パイプ プロトコルがより優れたパフォーマンスを提供する可能性があります。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/data/sqlconnectionopen-fails-on-windows-7-with-non-ifs-winsock-bsp-lsp-present.md b/includes/migration-guide/runtime/data/sqlconnectionopen-fails-on-windows-7-with-non-ifs-winsock-bsp-lsp-present.md
new file mode 100644
index 00000000000..e68c3bab8f7
--- /dev/null
+++ b/includes/migration-guide/runtime/data/sqlconnectionopen-fails-on-windows-7-with-non-ifs-winsock-bsp-lsp-present.md
@@ -0,0 +1,11 @@
+### IFS 以外の Winsock BSP または LSP が存在する Windows 7 で SqlConnection.Open が失敗する
+
+| | |
+|---|---|
+|説明| および は、コンピューター上に IFS 以外の Winsock BSP または LSP が存在する Windows 7 コンピューターで実行している場合、.NET Framework 4.5 では失敗します。IFS 以外の BSP または LSP がインストールされているかどうかを確認するには、netsh WinSock Show Catalog
コマンドを使用して、返される Winsock Catalog Provider Entry
項目をすべて調べてください。 Service Flags 値の 0x20000
ビットがセットされている場合、プロバイダーは IFS ハンドルを使用していて、正しく機能します。 0x20000
ビットがクリアされている (セットされていない) 場合は、IFS 以外の BSP または LSP です。|
+|提案される解決策|このバグは .NET framework 4.5.2 で修正されたため、.NET Framework をアップグレードすることによって回避できます。 または、インストールされている IFS 以外の Winsock LSP を削除することによって回避できます。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/data/sqlvariant-data-uses-collation-rather-than-database.md b/includes/migration-guide/runtime/data/sqlvariant-data-uses-collation-rather-than-database.md
new file mode 100644
index 00000000000..3ec9204ec8b
--- /dev/null
+++ b/includes/migration-guide/runtime/data/sqlvariant-data-uses-collation-rather-than-database.md
@@ -0,0 +1,10 @@
+### sql_variant データはデータベースの照合順序ではなく、sql_variant の照合順序を使用する
+
+| | |
+|---|---|
+|説明|sql_variant
データはデータベースの照合順序ではなく sql_variant
の照合順序を使用します。|
+|提案される解決策|この変更により、データベースの照合順序が sql_variant
の照合順序と異なる場合にデータ破損が生じる可能性に対応できます。 破損したデータに依存するアプリケーションでは、エラーが発生する場合があります。|
+|スコープ|透明|
+|Version|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/debugger/null-coalescer-values-are-not-visible-debugger-until-one-step-later.md b/includes/migration-guide/runtime/debugger/null-coalescer-values-are-not-visible-debugger-until-one-step-later.md
new file mode 100644
index 00000000000..b662cd66575
--- /dev/null
+++ b/includes/migration-guide/runtime/debugger/null-coalescer-values-are-not-visible-debugger-until-one-step-later.md
@@ -0,0 +1,10 @@
+### デバッガーですぐに null コアレッサー値が表示されない
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 のバグにより、64 ビット版の Framework で実行中に代入演算が実行された直後に、デバッガーで null 合体演算で設定された値が表示されません。|
+|提案される解決策|デバッガーでの操作に時間がかかると、ローカル/フィールドの値が正しく更新されなくなります。 この問題は .NET Framework 4.6 で修正されました。このバージョンの .NET Framework にアップグレードすれば、問題は解決します。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/ef/change-behavior-data-definition-language-ddl-apis.md b/includes/migration-guide/runtime/ef/change-behavior-data-definition-language-ddl-apis.md
new file mode 100644
index 00000000000..5a5e2bb357d
--- /dev/null
+++ b/includes/migration-guide/runtime/ef/change-behavior-data-definition-language-ddl-apis.md
@@ -0,0 +1,10 @@
+### データ定義言語 (DDL: Data Definition Language) API の動作の変更
+
+| | |
+|---|---|
+|説明|AttachDBFilename が指定されたときの DDL API の動作が、次のように変更されました。- 接続文字列で初期カタログ値を指定する必要がなくなりました。 以前は、AttachDBFilename と初期カタログの両方が必要でした。
- AttachDBFilename と初期カタログの両方が指定され、指定された MDF ファイルが存在した場合、ObjectContext.DatabaseExists メソッドは true を返します。 以前は、false を返していました。
- AttachDBFilename と初期カタログの両方が指定され、指定された MDF ファイルが存在した場合、ObjectContext.DeleteDatabase メソッドを呼び出すと、ファイルは削除されます。
- 接続文字列が存在しない MDF と存在しない初期カタログで AttachDBFilename の値を指定したときに ObjectContext.DeleteDatabase が呼び出された場合、メソッドは InvalidOperationException 例外をスローします。 以前は、SqlException 例外をスローしていました。
|
+|提案される解決策|これらの変更により、DDL API を使用するアプリケーションおよびツールの構築が簡単になりました。 これらの変更は、次のシナリオでアプリケーションの互換性に影響を及ぼす可能性があります。- ユーザーは、ObjectContext.DatabaseExists が true を返した場合に ObjectContext.DeleteDatabase を呼び出す代わりに、DROP DATABASE コマンドを直接実行するコードを作成します。 データベースがアタッチされておらず、MDF ファイルが存在する場合、これによって既存のコードが破損します。
- ユーザーは、初期カタログと MDF ファイルが存在しないとき、ObjectContext.DeleteDatabase メソッドが InvalidOperationException 例外ではなく、SqlException 例外をスローすることを前提としたコードを作成します。
|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/ef/different-exception-handling-for-objectcontextcreatedatabase.md b/includes/migration-guide/runtime/ef/different-exception-handling-for-objectcontextcreatedatabase.md
new file mode 100644
index 00000000000..96b693e82e1
--- /dev/null
+++ b/includes/migration-guide/runtime/ef/different-exception-handling-for-objectcontextcreatedatabase.md
@@ -0,0 +1,11 @@
+### ObjectContext.CreateDatabase メソッドと DbProviderServices.CreateDatabase メソッドで異なる例外処理
+
+| | |
+|---|---|
+|説明|.NET 4.5 から、データベースの作成が失敗した場合、CreateDatabase
メソッドは、空のデータベースの削除を試みます。 その操作が成功した場合、元の は伝播されます (.NET 4.0 で常にスローされていた の代わりに)。|
+|提案される解決策| または の実行中に をキャッチするときには、SQLExceptions もキャッチする必要があります。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/ef/ef-no-longer-throws-for-queryviews-with-specific-characteristics.md b/includes/migration-guide/runtime/ef/ef-no-longer-throws-for-queryviews-with-specific-characteristics.md
new file mode 100644
index 00000000000..f76bae18214
--- /dev/null
+++ b/includes/migration-guide/runtime/ef/ef-no-longer-throws-for-queryviews-with-specific-characteristics.md
@@ -0,0 +1,10 @@
+### EF で特定の特性を持つ QueryViews がスローされなくなった
+
+| | |
+|---|---|
+|説明|クエリの一部として関連エンティティを含めようとする 0..1 ナビゲーション プロパティを使用して QueryViews に関係するクエリをアプリが実行する場合、Entity Framework で 例外がスローされなくなりました。 たとえば、.Include(e => e.RelatedNavProp)
を呼び出す場合です。|
+|提案される解決策|この変更は、.Include を呼び出すクエリの実行時に 1 - 0..1 の関係にある QueryViews を使用するコードにのみ影響します。 これにより信頼性が向上し、ほとんどすべてのアプリに対して透過的になります。 ただし、予期しない動作が発生する場合、次のエントリをアプリの構成ファイルの <appSettings>
セクションに追加することにより、この変更を無効にできます。<add key="EntityFramework_SimplifyUserSpecifiedViews" value="false" />
|
+|スコープ|エッジ|
+|Version|4.5.2|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/ef/entityframework-60-loads-very-slowly-apps-launched-from-visual-studio.md b/includes/migration-guide/runtime/ef/entityframework-60-loads-very-slowly-apps-launched-from-visual-studio.md
new file mode 100644
index 00000000000..9301c766df1
--- /dev/null
+++ b/includes/migration-guide/runtime/ef/entityframework-60-loads-very-slowly-apps-launched-from-visual-studio.md
@@ -0,0 +1,10 @@
+### EntityFramework 6.0 は、Visual Studio から起動されたアプリを読み込むとき、非常に遅くなる
+
+| | |
+|---|---|
+|説明|Entity Framework 6.0 を使用するアプリを Visual Studio 2013 から起動すると、非常に遅くなることがあります。|
+|提案される解決策|この問題は、EntityFramework 6.0.2 で修正されます。 パフォーマンス問題を回避するには、EntityFramework を更新してください。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/ef/log-file-name-created-by-objectcontextcreatedatabase-method-has-changed.md b/includes/migration-guide/runtime/ef/log-file-name-created-by-objectcontextcreatedatabase-method-has-changed.md
new file mode 100644
index 00000000000..c02c9175127
--- /dev/null
+++ b/includes/migration-guide/runtime/ef/log-file-name-created-by-objectcontextcreatedatabase-method-has-changed.md
@@ -0,0 +1,11 @@
+### ObjectContext.CreateDatabase メソッドによって作成されたログ ファイル名が、SQL Server の仕様に一致するように変更された
+
+| | |
+|---|---|
+|説明| メソッドが、直接、または SqlClient プロバイダーと共に Code First と接続文字列の AttachDBFilename 値を使用して呼び出されると、filename.ldf (filename は AttachDBFilename 値によって指定されたファイルの名前) ではなく、filename_log.ldf という名前のログ ファイルを作成します。 この変更により、SQL Server の仕様に従ってログ ファイル名が提供されるため、デバッグ機能が向上します。|
+|提案される解決策|ログ ファイル名がアプリケーションにとって重要な場合、標準の _log.ldf ファイル名形式を予期するように、アプリケーションを更新する必要があります。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/ef/objectcontexttranslate-objectcontextexecutestorequery-now-support-enum-type.md b/includes/migration-guide/runtime/ef/objectcontexttranslate-objectcontextexecutestorequery-now-support-enum-type.md
new file mode 100644
index 00000000000..2375c47e351
--- /dev/null
+++ b/includes/migration-guide/runtime/ef/objectcontexttranslate-objectcontextexecutestorequery-now-support-enum-type.md
@@ -0,0 +1,11 @@
+### ObjectContext.Translate と ObjectContext.ExecuteStoreQuery で列挙型がサポートされるようになった
+
+| | |
+|---|---|
+|説明|.NET 4.0 では、ObjectContext.Translate
および ObjectContext.ExecuteStoreQuery
メソッドのジェネリック パラメーター T
は、列挙型にできませんでした。 このシナリオがサポートされるようになりました。|
+|提案される解決策|.NET 4.0 では、列挙型に対して Translate または ExecuteStoreQuery が呼び出された場合、「0」が返されました。 この動作が望ましい場合は、呼び出しを定数 0 (または同等の列挙型) に置き換えてください。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/ef/opt-in-break-revert-from-different-45-sql-generation-simpler-40.md b/includes/migration-guide/runtime/ef/opt-in-break-revert-from-different-45-sql-generation-simpler-40.md
new file mode 100644
index 00000000000..bb990573243
--- /dev/null
+++ b/includes/migration-guide/runtime/ef/opt-in-break-revert-from-different-45-sql-generation-simpler-40.md
@@ -0,0 +1,10 @@
+### 異なる 4.5 SQL 生成からより単純な 4.0 SQL 生成に戻す
+
+| | |
+|---|---|
+|説明|最初に OrderBy を使用せずに JOIN ステートメントを生成し、制限操作への呼び出しを含むクエリで、より単純な SQL が生成されるようになりました。 .NET Framework 4.5 へのアップグレード後、これらのクエリは以前のバージョンよりも複雑な SQL を生成しました。|
+|提案される解決策|既定では、この機能は無効です。 Entity Framework がパフォーマンスを低下させる追加の JOIN ステートメントを生成する場合は、アプリケーション構成 (app.config) ファイルの <appSettings>
セクションへ次のエントリを追加してこの機能を有効にできます。<add key="EntityFramework_SimplifyLimitOperations" value="true" />
|
+|スコープ|透明|
+|Version|4.5.2|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/globalization/unicode-standard-version-80-categories-now-supported.md b/includes/migration-guide/runtime/globalization/unicode-standard-version-80-categories-now-supported.md
new file mode 100644
index 00000000000..0f06bb6633f
--- /dev/null
+++ b/includes/migration-guide/runtime/globalization/unicode-standard-version-80-categories-now-supported.md
@@ -0,0 +1,11 @@
+### Unicode 標準バージョン 8.0 のカテゴリのサポート開始
+
+| | |
+|---|---|
+|説明|.NET Framework 4.6.2 で、フレームワークの Unicode データが Unicode 標準バージョン 6.3 からバージョン 8.0 にアップグレードされました。 .NET Framework 4.6.2 で Unicode 文字カテゴリを要求すると、いくつかの結果が以前の .NET Framework バージョンの結果と一致しない可能性があります。 この変更は、主にチェロキーの音節、新タイ ロ文字の母音記号および声調記号に影響します。|
+|提案される解決策|コードを確認し、ハードコーディングされた Unicode 文字カテゴリに依存するロジックを削除/変更します。|
+|スコープ|マイナー|
+|Version|4.6.2|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/jit/incorrect-code-generation-when-passing-comparing-uint16-values.md b/includes/migration-guide/runtime/jit/incorrect-code-generation-when-passing-comparing-uint16-values.md
new file mode 100644
index 00000000000..74530f5003b
--- /dev/null
+++ b/includes/migration-guide/runtime/jit/incorrect-code-generation-when-passing-comparing-uint16-values.md
@@ -0,0 +1,10 @@
+### UInt16 値を渡して比較する場合にコード生成が正しく行われません
+
+| | |
+|---|---|
+|説明|.NET Framework 4.7 で変更が導入されたため、.NET Framework 4.7 で実行されているアプリケーションの JIT コンパイラによって生成されたコードが 2 つの T:System.UInt16
値を正しく比較しない場合があります。 詳細については、GitHub.com の「[Issue #11508: Silent bad codegen when passing and comparing ushort args](https://github.com/dotnet/coreclr/issues/11508)」 (問題 #11508: ushort の引数を渡して比較する場合のサイレントかつ不適切な codegen ) を参照してください。|
+|提案される解決策|.NET Framework 4.7 で 16 ビットの符号なし値を比較したときに問題が検出された場合は、.NET Framework 4.7.1 にアップグレードしてください。|
+|スコープ|エッジ|
+|Version|4.7|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/linq/enumerableemptylttresultgt-always-returns-cached-instance.md b/includes/migration-guide/runtime/linq/enumerableemptylttresultgt-always-returns-cached-instance.md
new file mode 100644
index 00000000000..1238d4e6005
--- /dev/null
+++ b/includes/migration-guide/runtime/linq/enumerableemptylttresultgt-always-returns-cached-instance.md
@@ -0,0 +1,11 @@
+### Enumerable.Empty<TResult> は、常にキャッシュされたインスタンスを返します
+
+| | |
+|---|---|
+|説明|.NET 4.5 以降では、 は、常にキャッシュされた内部インスタンス を返します。以前は、 は、API が呼び出された時点で空の をキャッシュしました。つまり、 が迅速かつ同時に呼び出されるような条件では、API の別の呼び出しに対して、型の別のインスタンスが返される可能性がありました。|
+|提案される解決策|以前の動作は非確定的なため、コードがそれに依存している可能性は低いです。 ただし、ありそうにないことですが、空の列挙が比較され、ときには等しくないことが予期されている場合には、 を使用する代わりに、明示的に空の配列を作成する (new T[0]
) 必要があります。|
+|スコープ|エッジ|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/mef/mef-catalogs-implement-ienumerable-therefore-can-no-longer-be-used-create.md b/includes/migration-guide/runtime/mef/mef-catalogs-implement-ienumerable-therefore-can-no-longer-be-used-create.md
new file mode 100644
index 00000000000..b0ea75abd02
--- /dev/null
+++ b/includes/migration-guide/runtime/mef/mef-catalogs-implement-ienumerable-therefore-can-no-longer-be-used-create.md
@@ -0,0 +1,10 @@
+### MEF カタログは IEnumerable を実装するため、シリアライザーの作成には使用できなくなった
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 以降では、MEF カタログは IEnumerable を実装するため、シリアライザー ( オブジェクト) の作成には使用できなくなりました。 MEF カタログをシリアル化しようとすると、例外がスローされます。|
+|提案される解決策|シリアライザーの作成に MEF を使用できなくなりました。|
+|スコープ|Major|
+|バージョン|4.5|
+|型|ランタイム|
+
diff --git a/includes/migration-guide/runtime/networking/contentdisposition-datetimes-returns-slightly-different-string.md b/includes/migration-guide/runtime/networking/contentdisposition-datetimes-returns-slightly-different-string.md
new file mode 100644
index 00000000000..23874068b69
--- /dev/null
+++ b/includes/migration-guide/runtime/networking/contentdisposition-datetimes-returns-slightly-different-string.md
@@ -0,0 +1,11 @@
+### ContentDisposition DateTimes で少し異なる文字列が返される
+
+| | |
+|---|---|
+|説明| の文字列表現が更新され、4.6 以降では、常に の時間コンポーネントが 2 桁で表されます。 これは、[RFC822](http://www.ietf.org/rfc/rfc0822.txt) と [RFC2822](http://www.ietf.org/rfc/rfc2822.txt) に準拠しています。 これにより、4.6 では、配置の時間要素の 1 つが午前 10 時より前のシナリオでは、 は少し異なる文字列を返します。 ContentDispositions は文字列への変換によってシリアル化される場合があるため、 操作、シリアル化、または GetHashCode 呼び出しを見直す必要があることに注意してください。|
+|提案される解決策|異なるバージョンの .NET Framework からの ContentDispotisions の文字列表現が互いに正しく対応することを期待しないでください。 可能な場合は、比較を行う前に、文字列を ContentDispositions に戻してください。|
+|スコープ|マイナー|
+|Version|4.6|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/networking/deserialization-mailmessage-objects-serialized-under-net-framework-45-may.md b/includes/migration-guide/runtime/networking/deserialization-mailmessage-objects-serialized-under-net-framework-45-may.md
new file mode 100644
index 00000000000..1cd5b99f8e2
--- /dev/null
+++ b/includes/migration-guide/runtime/networking/deserialization-mailmessage-objects-serialized-under-net-framework-45-may.md
@@ -0,0 +1,11 @@
+### .NET Framework 4.5 でシリアル化された MailMessage オブジェクトの逆シリアル化が失敗する可能性がある
+
+| | |
+|---|---|
+|説明|.NET Framework 4.5 以降では、 オブジェクトに非 ASCII 文字を含めることができます。 .NET Framework 4 では、ASCII 文字しかサポートされていません。 非 ASCII 文字が含まれ、.NET Framework 4.5 以降でシリアル化された オブジェクトは、.NET Framework 4 で逆シリアル化することはできません。|
+|提案される解決策| オブジェクトの逆シリアル化時に、コードで例外処理が提供されることを確認します。|
+|スコープ|マイナー|
+|Version|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/networking/systemnetpeertopeercollaboration-unavailable-on-windows-8.md b/includes/migration-guide/runtime/networking/systemnetpeertopeercollaboration-unavailable-on-windows-8.md
new file mode 100644
index 00000000000..abf425ed2b1
--- /dev/null
+++ b/includes/migration-guide/runtime/networking/systemnetpeertopeercollaboration-unavailable-on-windows-8.md
@@ -0,0 +1,11 @@
+### Windows 8 で System.Net.PeerToPeer.Collaboration が使用できない
+
+| | |
+|---|---|
+|説明|System.Net.PeerToPeer.Collaboration 名前空間は、Windows 8 以上では使用できません。|
+|提案される解決策|Windows 8 以上をサポートするアプリは、この名前空間またはそのメンバーに依存しないように更新する必要があります。|
+|スコープ|Major|
+|バージョン|4.5|
+|型|ランタイム|
+|影響を受ける API||
+
diff --git a/includes/migration-guide/runtime/security/rsacng-dsacng-are-once-again-usable-partial-trust-scenarios.md b/includes/migration-guide/runtime/security/rsacng-dsacng-are-once-again-usable-partial-trust-scenarios.md
new file mode 100644
index 00000000000..69517888e19
--- /dev/null
+++ b/includes/migration-guide/runtime/security/rsacng-dsacng-are-once-again-usable-partial-trust-scenarios.md
@@ -0,0 +1,11 @@
+### 部分信頼のシナリオで RSACng と DSACng が再び使用可能に
+
+| | |
+|---|---|
+|説明|CngLightup ( などの複数の上位レベル暗号化 API で使われます) および は、完全信頼に依存する場合があります。 たとえば、 アクセス許可をアサートしない P/Invoke や、 に に対するアクセス許可要求があるコード パスなどです。 .NET Framework 4.6.2 以降では、CngLightup は可能な場合に常に に切り替えるために使われました。 その結果、 を正常に使っていた部分信頼アプリが、失敗して 例外をスローするようになりました。この変更では、CngLightup を使っているすべての関数が必要なアクセス許可を持つように、必要なアサートが追加されます。|
+|提案される解決策|.NET Framework 4.6.2 でのこの変更により部分信頼アプリに悪影響があった場合は、.NET Framework 4.7.1 にアップグレードしてください。|
+|スコープ|エッジ|
+|Version|4.6.2|
+|型|ランタイム|
+|影響を受ける API|