diff --git a/docs/core/linux-prerequisites.md b/docs/core/linux-prerequisites.md
index 5e77be0a93f..6808b40bcef 100644
--- a/docs/core/linux-prerequisites.md
+++ b/docs/core/linux-prerequisites.md
@@ -3,17 +3,12 @@ title: Linux における .NET Core の前提条件
description: Linux マシンで .NET Core アプリケーションを開発、展開、および実行するために必要なサポートされている Linux のバージョンと .NET Core の依存関係。
author: jralexander
ms.author: johalex
-ms.date: 04/19/2018
-ms.topic: conceptual
-ms.prod: dotnet-core
-ms.devlang: dotnet
-ms.workload:
-- dotnetcore
-ms.openlocfilehash: 9d986ed56bbc6f803988fde4b5500cd5d5364050
-ms.sourcegitcommit: 03ee570f6f528a7d23a4221dcb26a9498edbdf8c
+ms.date: 05/08/2018
+ms.openlocfilehash: 41656bf8f18c2b66c35f0a65e4af0949db4464f9
+ms.sourcegitcommit: 88f251b08bf0718ce119f3d7302f514b74895038
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 04/28/2018
+ms.lasthandoff: 05/10/2018
---
# Linux における .NET Core の前提条件
@@ -38,7 +33,7 @@ ms.lasthandoff: 04/28/2018
* Oracle Linux 7
* Fedora 27、26
* Debian 9、8.7 以降のバージョン
-* Ubuntu 17.10、16.04、14.04
+* Ubuntu 18.04、17.10、16.04、14.04
* Linux Mint 18、17
* openSUSE 42.3 以降のバージョン
* SUSE Enterprise Linux (SLES) 12 Service Pack 2 以降
@@ -147,24 +142,29 @@ Red Hat .NET チャネル アクセスの登録に関するヘルプについて
**.NET Core 2.0**
-|ランタイム/SDK |Ubuntu 17.10 |Ubuntu 16.04 / Linux Mint 18|Ubuntu 14.04 / Linux Mint 17|
-|-------------------------|--------------|----------------------------|----------------------------|
-|.NET Core ランタイム 2.0.6 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.0.6)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.0.6) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.0.6) |
-|.NET Core ランタイム 2.0.5 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.0.5)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.0.5) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.0.5) |
-|.NET Core SDK 2.1.103 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.1.103)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.1.103) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.1.103) |
-|.NET Core SDK 2.0.3 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.0.3)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.0.3) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.0.3) |
+|ランタイム/SDK |Ubuntu 18.04 |Ubuntu 17.10 |Ubuntu 16.04 / Linux Mint 18|Ubuntu 14.04 / Linux Mint 17|
+|-------------------------|----------------|----------------|----------------------------|----------------------------|
+|.NET Core ランタイム 2.0.7 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/runtime-2.0.7)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.0.7)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.0.7) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.0.7) |
+|.NET Core ランタイム 2.0.6 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/runtime-2.0.6)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.0.6)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.0.6) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.0.6) |
+|.NET Core ランタイム 2.0.5 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/runtime-2.0.5)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.0.5)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.0.5) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.0.5) |
+|.NET Core SDK 2.1.105 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/sdk-2.1.105)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.1.105)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.1.105) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.1.105) |
+|.NET Core SDK 2.1.103 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/sdk-2.1.103)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.1.103)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.1.103) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.1.103) |
+|.NET Core SDK 2.0.3 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/sdk-2.0.3)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.0.3)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.0.3) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.0.3) |
+|.NET Core SDK 2.0.0 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/sdk-2.0.0)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.0.0)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.0.0) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.0.0) |
**.NET Core 2.1**
>[!IMPORTANT]
> Visual Studio で .NET Core 2.1 を使用するには、[Visual Studio 2017 15.7 Preview 1 以降をインストールする](https://www.visualstudio.com/vs/preview)必要があります。
-|ランタイム/SDK |Ubuntu 17.10 |Ubuntu 16.04 / Linux Mint 18|Ubuntu 14.04 / Linux Mint 17|
-|---------------------------------|----------------|----------------------------|----------------------------|
-|.NET Core ランタイム 2.1.0-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.1.0-preview2)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.1.0-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.1.0-preview2) |
-|.NET Core ランタイム 2.1.0-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.1.0-preview1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.1.0-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.1.0-preview1) |
-|.NET Core SDK 2.1.300-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.1.300-preview2)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.1.300-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.1.300-preview2)
-|.NET Core SDK 2.1.300-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.1.300-preview1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.1.300-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.1.300-preview1) |
+|ランタイム/SDK |Ubuntu 18.04 |Ubuntu 17.10 |Ubuntu 16.04 / Linux Mint 18|Ubuntu 14.04 / Linux Mint 17|
+|---------------------------------|----------------|----------------|----------------------------|----------------------------|
+|.NET Core ランタイム 2.1.0-rc1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/runtime-2.1.0-rc1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.1.0-rc1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.1.0-rc1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.1.0-rc1) |
+|.NET Core ランタイム 2.1.0-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/runtime-2.1.0-preview2)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.1.0-preview2)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.1.0-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.1.0-preview2) |
+|.NET Core ランタイム 2.1.0-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/runtime-2.1.0-preview1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/runtime-2.1.0-preview1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-2.1.0-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/runtime-2.1.0-preview1) |
+|.NET Core SDK 2.1.300-rc1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/sdk-2.1.300-rc1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.1.300-rc1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.1.300-rc1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.1.300-rc1) |
+|.NET Core SDK 2.1.300-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/sdk-2.1.300-preview2)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.1.300-preview2)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.1.300-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.1.300-preview2) |
+|.NET Core SDK 2.1.300-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu18-04/sdk-2.1.300-preview1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu17-10/sdk-2.1.300-preview1)|[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/sdk-2.1.300-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/ubuntu14-04/sdk-2.1.300-preview1) |
# [.NET Core 1.x](#tab/netcore1x)
@@ -203,10 +203,13 @@ Red Hat .NET チャネル アクセスの登録に関するヘルプについて
|ランタイム/SDK |Debian 9 |Debian 8 |
|-------------------------|---------------|---------------|
+|.NET Core ランタイム 2.0.7 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/runtime-2.0.7) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/runtime-2.0.7) |
|.NET Core ランタイム 2.0.6 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/runtime-2.0.6) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/runtime-2.0.6) |
|.NET Core ランタイム 2.0.5 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/runtime-2.0.5) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/runtime-2.0.5) |
+|.NET Core SDK 2.1.105 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-2.1.105) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/sdk-2.1.105) |
|.NET Core SDK 2.1.103 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-2.1.103) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/sdk-2.1.103) |
|.NET Core SDK 2.0.3 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-2.0.3) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/sdk-2.0.3) |
+|.NET Core SDK 2.0.0 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-2.0.0) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/sdk-2.0.0) |
**.NET Core 2.1**
@@ -215,8 +218,10 @@ Red Hat .NET チャネル アクセスの登録に関するヘルプについて
|ランタイム/SDK |Debian 9 |Debian 8 |
|---------------------------------|---------------|---------------|
+|.NET Core ランタイム 2.1.0-rc1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/runtime-2.1.0-rc1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/runtime-2.1.0-rc1) |
|.NET Core ランタイム 2.1.0-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/runtime-2.1.0-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/runtime-2.1.0-preview2) |
|.NET Core ランタイム 2.1.0-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/runtime-2.1.0-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/runtime-2.1.0-preview1) |
+|.NET Core SDK 2.1.300-rc1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-2.1.300-rc1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/sdk-2.1.300-rc1) |
|.NET Core SDK 2.1.300-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-2.1.300-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/sdk-2.1.300-preview2) |
|.NET Core SDK 2.1.300-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian9/sdk-2.1.300-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/debian8/sdk-2.1.300-preview1) |
@@ -254,8 +259,10 @@ Red Hat .NET チャネル アクセスの登録に関するヘルプについて
|ランタイム/SDK |Fedora 26 以降 |Fedora 25 以前 |
|-------------------------|-------------------|----------------------|
+|.NET Core ランタイム 2.0.7 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/runtime-2.0.7) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/runtime-2.0.7) |
|.NET Core ランタイム 2.0.6 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/runtime-2.0.6) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/runtime-2.0.6) |
|.NET Core ランタイム 2.0.5 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/runtime-2.0.5) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/runtime-2.0.5) |
+|.NET Core SDK 2.1.105 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/sdk-2.1.105) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/sdk-2.1.105) |
|.NET Core SDK 2.1.103 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/sdk-2.1.103) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/sdk-2.1.103) |
|.NET Core SDK 2.0.3 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/sdk-2.0.3) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/sdk-2.0.3) |
@@ -264,12 +271,14 @@ Red Hat .NET チャネル アクセスの登録に関するヘルプについて
>[!IMPORTANT]
> Visual Studio で .NET Core 2.1 を使用するには、[Visual Studio 2017 15.7 Preview 1 以降をインストールする](https://www.visualstudio.com/vs/preview)必要があります。
-|ランタイム/SDK |Fedora 26 以降 |Fedora 25 以前 |
+|ランタイム/SDK |Fedora 27 |Fedora 26 |
|---------------------------------|-------------------|----------------------|
-|.NET Core ランタイム 2.1.0-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/runtime-2.1.0-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/runtime-2.1.0-preview2) |
-|.NET Core ランタイム 2.1.0-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/runtime-2.1.0-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/runtime-2.1.0-preview1) |
-|.NET Core SDK 2.1.300-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/sdk-2.1.300-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/sdk-2.1.300-preview2) |
-|.NET Core SDK 2.1.300-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/sdk-2.1.300-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora25/sdk-2.1.300-preview1) |
+|.NET Core ランタイム 2.1.0-rc1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora27/runtime-2.1.0-rc1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/runtime-2.1.0-rc1) |
+|.NET Core ランタイム 2.1.0-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora27/runtime-2.1.0-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/runtime-2.1.0-preview2) |
+|.NET Core ランタイム 2.1.0-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora27/runtime-2.1.0-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/runtime-2.1.0-preview1) |
+|.NET Core SDK 2.1.300-rc1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora27/sdk-2.1.300-rc1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/sdk-2.1.300-rc1) |
+|.NET Core SDK 2.1.300-preview2 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora27/sdk-2.1.300-preview2) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/sdk-2.1.300-preview2) |
+|.NET Core SDK 2.1.300-preview1 |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora27/runtime-2.1.0-preview1) |[インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/fedora26/runtime-2.1.0-preview1) |
# [.NET Core 1.x](#tab/netcore1x)
@@ -308,18 +317,23 @@ Red Hat .NET チャネル アクセスの登録に関するヘルプについて
**.NET Core 2.0**
+* .NET Core ランタイム 2.0.7 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/runtime-2.0.6)
* .NET Core ランタイム 2.0.6 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/runtime-2.0.6)
* .NET Core ランタイム 2.0.5 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/runtime-2.0.5)
+* .NET Core SDK 2.1.105 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/sdk-2.1.105)
* .NET Core SDK 2.1.103 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/sdk-2.1.103)
* .NET Core SDK 2.0.3 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/sdk-2.0.3)
+* .NET Core SDK 2.0.0 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/sdk-2.0.0)
**.NET Core 2.1**
>[!IMPORTANT]
> Visual Studio で .NET Core 2.1 を使用するには、[Visual Studio 2017 15.7 Preview 1 以降をインストールする](https://www.visualstudio.com/vs/preview/)必要があります。
+* .NET Core ランタイム 2.1.0-rc1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/runtime-2.1.0-rc1)
* .NET Core ランタイム 2.1.0-preview2 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/runtime-2.1.0-preview2)
* .NET Core ランタイム 2.1.0-preview1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/runtime-2.1.0-preview1)
+* .NET Core SDK 2.1.300-rc1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/sdk-2.1.300-rc1)
* .NET Core SDK 2.1.300-preview2 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/sdk-2.1.300-preview2)
* .NET Core SDK 2.1.300-preview1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/centos/sdk-2.1.300-preview1)
@@ -352,18 +366,46 @@ Red Hat .NET チャネル アクセスの登録に関するヘルプについて
**.NET Core 2.0**
+**SUSE Linux Enterprise Server**
+
+* .NET Core ランタイム 2.0.7 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/runtime-2.0.7)
+* .NET Core ランタイム 2.0.6 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/runtime-2.0.6)
+* .NET Core ランタイム 2.0.5 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/runtime-2.0.5)
+* .NET Core SDK 2.1.105 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/sdk-2.1.105)
+* .NET Core SDK 2.1.103 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/sdk-2.1.103)
+* .NET Core SDK 2.0.3 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/sdk-2.0.3)
+* .NET Core SDK 2.0.0 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/sdk-2.0.0)
+
+**openSUSE**
+
+* .NET Core ランタイム 2.0.7 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/runtime-2.0.7)
* .NET Core ランタイム 2.0.6 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/runtime-2.0.6)
* .NET Core ランタイム 2.0.5 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/runtime-2.0.5)
+* .NET Core SDK 2.1.105 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/sdk-2.1.105)
* .NET Core SDK 2.1.103 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/sdk-2.1.103)
* .NET Core SDK 2.0.3 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/sdk-2.0.3)
+* .NET Core SDK 2.0.0 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/sdk-2.0.0)
**.NET Core 2.1**
>[!IMPORTANT]
> Visual Studio で .NET Core 2.1 を使用するには、[Visual Studio 2017 15.7 Preview 1 以降をインストールする](https://www.visualstudio.com/vs/preview)必要があります。
+**SUSE Linux Enterprise Server**
+
+* .NET Core ランタイム 2.1.0-rc1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/runtime-2.1.0-rc1)
+* .NET Core ランタイム 2.1.0-preview2 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/runtime-2.1.0-preview2)
+* .NET Core ランタイム 2.1.0-preview1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/runtime-2.1.0-preview1)
+* .NET Core SDK 2.1.300-rc1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/sdk-2.1.300-rc1)
+* .NET Core SDK 2.1.300-preview2 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/sdk-2.1.300-preview2)
+* .NET Core SDK 2.1.300-preview1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/sles/sdk-2.1.300-preview1)
+
+**openSUSE**
+
+* .NET Core ランタイム 2.1.0-rc1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/runtime-2.1.0-rc1)
* .NET Core ランタイム 2.1.0-preview2 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/runtime-2.1.0-preview2)
* .NET Core ランタイム 2.1.0-preview1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/runtime-2.1.0-preview1)
+* .NET Core SDK 2.1.300-rc1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/sdk-2.1.300-rc1)
* .NET Core SDK 2.1.300-preview2 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/sdk-2.1.300-preview2)
* .NET Core SDK 2.1.300-preview1 [インストール リンク](https://www.microsoft.com/net/download/linux-package-manager/opensuse/sdk-2.1.300-preview1)
diff --git a/docs/core/windows-prerequisites.md b/docs/core/windows-prerequisites.md
index 8828c4ef501..4df02aa4858 100644
--- a/docs/core/windows-prerequisites.md
+++ b/docs/core/windows-prerequisites.md
@@ -4,15 +4,11 @@ description: Windows コンピューターで .NET Core アプリケーション
author: JRAlexander
ms.author: johalex
ms.date: 04/24/2018
-ms.topic: conceptual
-ms.prod: dotnet-core
-ms.workload:
-- dotnetcore
-ms.openlocfilehash: 6f2ba8540a38f8e30d3d968f5e2c891c850053aa
-ms.sourcegitcommit: 03ee570f6f528a7d23a4221dcb26a9498edbdf8c
+ms.openlocfilehash: 7c6f39f004ebc39ca714ce419a38d842fcf8f0cb
+ms.sourcegitcommit: ff1d40507b3eb6e2185478e37c66c66be6de46f1
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 04/28/2018
+ms.lasthandoff: 05/11/2018
---
# Windows における .NET Core の前提条件
diff --git a/docs/csharp/async.md b/docs/csharp/async.md
index 35b7bb329a2..ec542cb14ef 100644
--- a/docs/csharp/async.md
+++ b/docs/csharp/async.md
@@ -4,11 +4,11 @@ description: .NET Core で提供される、C# 言語レベルの非同期プロ
author: cartermp
ms.date: 06/20/2016
ms.assetid: b878c34c-a78f-419e-a594-a2b44fa521a4
-ms.openlocfilehash: 22a63ab55ba7f7888973f08ebdb3cbc149d6ac57
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: b753b887da6f8836e0f4363a479c12c7364ea770
+ms.sourcegitcommit: 895c7602386a6dfe7ca4facce3d965b27e5c6e87
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/19/2018
---
# 非同期プログラミング
@@ -131,7 +131,7 @@ public async Task GetDotNetCountAsync()
{
// Suspends GetDotNetCountAsync() to allow the caller (the web server)
// to accept another request, rather than blocking on this one.
- var html = await _httpClient.DownloadStringAsync("http://dotnetfoundation.org");
+ var html = await _httpClient.GetStringAsync("http://dotnetfoundation.org");
return Regex.Matches(html, @"\.NET").Count;
}
diff --git a/docs/csharp/delegates-patterns.md b/docs/csharp/delegates-patterns.md
index 4cb13514b00..223f7905711 100644
--- a/docs/csharp/delegates-patterns.md
+++ b/docs/csharp/delegates-patterns.md
@@ -3,11 +3,11 @@ title: デリゲートの一般的なパターン
description: コンポーネント間の密接な結合を避けるための、コードでのデリゲートの一般的な使用パターンについて説明します。
ms.date: 06/20/2016
ms.assetid: 0ff8fdfd-6a11-4327-b061-0f2526f35b43
-ms.openlocfilehash: fceab2b9c6bbd1d687566820366459ec57ae7a2d
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: b9762841656aa362589d01ed011407aeedfe4a20
+ms.sourcegitcommit: 22c3c8f74eaa138dbbbb02eb7d720fce87fc30a9
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/17/2018
---
# デリゲートの一般的なパターン
@@ -27,7 +27,7 @@ var smallNumbers = numbers.Where(n => n < 10);
Where メソッドのプロトタイプは次のとおりです。
```csharp
-public static IEnumerable Where (IEnumerable source, Func predicate);
+public static IEnumerable Where (this IEnumerable source, Func predicate);
```
この例は、LINQ のすべてのメソッドに当てはまります。 具体的なクエリを扱うコードには、すべてデリゲートが使われているのです。 きわめて強力な API デザイン パターンなので、しっかり覚えて自分のものにしてください。
diff --git a/docs/csharp/how-to/search-strings.md b/docs/csharp/how-to/search-strings.md
index 9b1ec1b1e5d..3c9fba93804 100644
--- a/docs/csharp/how-to/search-strings.md
+++ b/docs/csharp/how-to/search-strings.md
@@ -1,21 +1,16 @@
---
title: '方法: 文字列を検索する (C# ガイド)'
ms.date: 02/21/2018
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
helpviewer_keywords:
- searching strings [C#]
- strings [C#], searching with String methods
- strings [C#], searching with regular expressions
ms.assetid: fb1d9a6d-598d-4a35-bd5f-b86012edcb2b
-ms.author: wiwagn
-ms.openlocfilehash: cb381ee811846ae8ff0589d918be4f43b3e9ddc3
-ms.sourcegitcommit: b750a8e3979749b214e7e10c82efb0a0524dfcb1
+ms.openlocfilehash: d1e132093cc59c7b41a3f7d5b522fca2e224f779
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 04/09/2018
+ms.lasthandoff: 05/04/2018
---
# 方法: 文字列を検索する
diff --git a/docs/csharp/language-reference/compiler-messages/cs0731.md b/docs/csharp/language-reference/compiler-messages/cs0731.md
index d4bd4880a72..5b33d8ed00b 100644
--- a/docs/csharp/language-reference/compiler-messages/cs0731.md
+++ b/docs/csharp/language-reference/compiler-messages/cs0731.md
@@ -6,11 +6,11 @@ f1_keywords:
helpviewer_keywords:
- CS0731
ms.assetid: b2df5d5c-b1cd-4620-881f-f5a492669784
-ms.openlocfilehash: 7666881fecb5ac5beec97abd3c255de9baf997a9
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: be5c8696c9eb96f8d038dddac14663f2186176bc
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# コンパイラ エラー CS0731
アセンブリ 'assembly' にある 'type' の型フォワーダーで循環が発生します
@@ -108,7 +108,7 @@ ms.lasthandoff: 05/04/2018
// Image base: 0x04E40000
```
-```
+```csharp
// CS0731.cs
// compile with: /reference:circular.dll /reference:circular2.dll
// CS0731 expected
diff --git a/docs/csharp/language-reference/compiler-messages/cs1026.md b/docs/csharp/language-reference/compiler-messages/cs1026.md
index 196b5ad8650..70313b68d77 100644
--- a/docs/csharp/language-reference/compiler-messages/cs1026.md
+++ b/docs/csharp/language-reference/compiler-messages/cs1026.md
@@ -6,11 +6,11 @@ f1_keywords:
helpviewer_keywords:
- CS1026
ms.assetid: 782c0570-19c2-425d-aa41-565d33aa9bc0
-ms.openlocfilehash: f00c9c92f2c32dec32531cb255992f241c41d3e7
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 642592d2aef12c087d5302a35047864c64e9f3fd
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# コンパイラ エラー CS1026
) が必要です。
@@ -19,19 +19,19 @@ ms.lasthandoff: 05/04/2018
このエラーに共通するのは、ASP.NET ページのインライン式の中で、式ではなくステートメントを使っていることです。 たとえば、次の式は間違っています。
-```
+```aspx-csharp
<%=new TimeSpan(DateTime.Now.Ticks - new DateTime(2001, 1, 1).Ticks).Days;%>
```
次の式は正しい式です。
-```
+```aspx-csharp
<%=new TimeSpan(DateTime.Now.Ticks - new DateTime(2001, 1, 1).Ticks).Days %>
```
この式は、次のように解釈されます。
-```
+```aspx-csharp
<% Response.Write(new TimeSpan(DateTime.Now.Ticks - new DateTime(2001, 1, 1).Ticks).Days); %>
```
diff --git a/docs/csharp/language-reference/keywords/abstract.md b/docs/csharp/language-reference/keywords/abstract.md
index 127c35bc0cd..f7732e86675 100644
--- a/docs/csharp/language-reference/keywords/abstract.md
+++ b/docs/csharp/language-reference/keywords/abstract.md
@@ -1,24 +1,17 @@
---
-title: "abstract (C# リファレンス)"
+title: abstract (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- abstract
- abstract_CSharpKeyword
helpviewer_keywords:
- abstract keyword [C#]
ms.assetid: b0797770-c1f3-4b4d-9441-b9122602a6bb
-caps.latest.revision:
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 9c6dbb03a05ff1c86752983d130691ce23e341d7
-ms.sourcegitcommit: be1fb5d9447ad459bef22b91a91c72e3e0b2d916
+ms.openlocfilehash: 78212365c4183d31bcd5f1b1628c3443d48909a8
+ms.sourcegitcommit: 88f251b08bf0718ce119f3d7302f514b74895038
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 02/09/2018
+ms.lasthandoff: 05/10/2018
---
# abstract (C# リファレンス)
`abstract` 修飾子は、その修飾対象の実装が不足しているか、不完全であることを示します。 クラスやメソッド、プロパティ、インデクサー、イベントと組み合わせて abstract 修飾子を使用することができます。 クラスの宣言では、他のクラスの基底クラスとしての使用のみを意図したクラスであることを示すために `abstract` 修飾子を使います。 abstract としてマークされた (つまり抽象クラスに含まれている) メンバーは、その抽象クラスから派生したクラスで実装する必要があります。
diff --git a/docs/csharp/language-reference/keywords/as.md b/docs/csharp/language-reference/keywords/as.md
index e7852cce834..6788d2394c1 100644
--- a/docs/csharp/language-reference/keywords/as.md
+++ b/docs/csharp/language-reference/keywords/as.md
@@ -8,11 +8,11 @@ helpviewer_keywords:
- type conversion [C#], as keyword
- as keyword [C#]
ms.assetid: a9be126b-cbf4-4990-a70d-d0e1983cad0e
-ms.openlocfilehash: 6ea5346119259d70ac1a42f3f72a8b2746b8f536
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 092c30a858df7baeb35bdf28bae53802fb0916d4
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# as (C# リファレンス)
`as` 演算子を使用して、互換性のある参照型または [null 許容型](../../../csharp/programming-guide/nullable-types/index.md)間で特定の型変換を実行できます。 次のコードは一例を示しています。
@@ -22,13 +22,13 @@ ms.lasthandoff: 05/04/2018
## コメント
`as` 演算子はキャスト演算と似ています。 ただし、変換が可能でない場合、`as` は例外を発生させる代わりに `null` を返します。 次に例を示します。
-```
+```csharp
expression as type
```
このコードは次の式と同等ですが、`expression` 変数は 1 回しか評価されません。
-```
+```csharp
expression is type ? (type)expression : (type)null
```
diff --git a/docs/csharp/language-reference/keywords/built-in-types-table.md b/docs/csharp/language-reference/keywords/built-in-types-table.md
index f07365a0cc2..7ef4f0d71b9 100644
--- a/docs/csharp/language-reference/keywords/built-in-types-table.md
+++ b/docs/csharp/language-reference/keywords/built-in-types-table.md
@@ -5,11 +5,11 @@ helpviewer_keywords:
- types [C#], built-in
- built-in C# types
ms.assetid: 54f901f2-bf2f-472c-ae8d-73e8ecfc57fe
-ms.openlocfilehash: 7407d18c58dd3d12337c6845627d83f02eaf7fa0
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 120347e5bff7f0d6c7120af0cb250936ca39ea16
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# 組み込み型の一覧表 (C# リファレンス)
次の表は、C# の組み込み型のキーワードを示しています。これは、 名前空間の定義済み型の別名です。
@@ -37,14 +37,14 @@ ms.lasthandoff: 05/04/2018
C# 型のキーワードと別名は相互に交換できます。 たとえば、整数の変数を宣言するには、次のいずれかの宣言を使用します。
-```
+```csharp
int x = 123;
System.Int32 x = 123;
```
C# 型の実際の型を表示するには、`GetType()` システム メソッドを使用します。 たとえば、次のステートメントは、`myVariable` の型を表すシステムの別名を表示します。
-```
+```csharp
Console.WriteLine(myVariable.GetType());
```
diff --git a/docs/csharp/language-reference/keywords/byte.md b/docs/csharp/language-reference/keywords/byte.md
index 1eb2525d551..c80c7508e84 100644
--- a/docs/csharp/language-reference/keywords/byte.md
+++ b/docs/csharp/language-reference/keywords/byte.md
@@ -7,11 +7,11 @@ f1_keywords:
helpviewer_keywords:
- byte keyword [C#]
ms.assetid: 111f1db9-ca32-4f0e-b497-4783517eda47
-ms.openlocfilehash: 71af48f1cbfa82bafdd4888f0985cd88d44976b2
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 4ac913bd0d1bd178211ad26a720a80e22877c961
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# byte (C# リファレンス)
@@ -45,27 +45,27 @@ C# 7.0 以降では、読みやすさを強化するためにいくつかの機
より大きな記憶領域のサイズを持つ、リテラル以外の数値型を暗黙的に `byte` に変換することはできません。 整数型の記憶域サイズの詳細については、「[整数型の一覧表](../../../csharp/language-reference/keywords/integral-types-table.md)」を参照してください。 たとえば、2 つの `byte` 変数 `x` と `y` があるとします。
-```
+```csharp
byte x = 10, y = 20;
```
次の代入ステートメントは、代入演算子の右側にある算術式が既定で `int` に評価されるため、コンパイル エラーになります。
-```
+```csharp
// Error: conversion from int to byte:
byte z = x + y;
```
この問題を解決するには、キャストを使用します。
-```
+```csharp
// OK: explicit conversion:
byte z = (byte)(x + y);
```
ただし、次のステートメントは使用できます。このステートメントでは、変換先の変数の記憶領域サイズは元のサイズ以上になります。
-```
+```csharp
int x = 10, y = 20;
int m = x + y;
long n = x + y;
@@ -73,7 +73,7 @@ long n = x + y;
浮動小数点型から `byte` への暗黙の型変換はありません。 たとえば、次のステートメントは、明示的なキャストを使用しない場合、コンパイラ エラーになります。
-```
+```csharp
// Error: no implicit conversion from double:
byte x = 3.0;
// OK: explicit conversion:
@@ -82,14 +82,14 @@ byte y = (byte)3.0;
オーバーロードされたメソッドを呼び出すときは、キャストを使用する必要があります。 たとえば、`byte` パラメーターと [int](../../../csharp/language-reference/keywords/int.md) パラメーターを使用したオーバーロードされたメソッドがあるとします。
-```
+```csharp
public static void SampleMethod(int i) {}
public static void SampleMethod(byte b) {}
```
`byte` キャストを使用すると、正しい型が呼び出されます。次に例を示します。
-```
+```csharp
// Calling the method with the int parameter:
SampleMethod(5);
// Calling the method with the byte parameter:
diff --git a/docs/csharp/language-reference/keywords/class.md b/docs/csharp/language-reference/keywords/class.md
index 96c92d2d58a..c874b00fec2 100644
--- a/docs/csharp/language-reference/keywords/class.md
+++ b/docs/csharp/language-reference/keywords/class.md
@@ -1,24 +1,17 @@
---
title: class (C# リファレンス)
ms.date: 07/18/2017
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- class_CSharpKeyword
- class
helpviewer_keywords:
- class keyword [C#]
ms.assetid: b95d8815-de18-4c3f-a8cc-a0a53bdf8690
-caps.latest.revision: 30
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: ae4b019ee88b6f331a76c750ab94fc76a3343adb
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 20968d2f72195db6d16de1b726c6e946b91ffcd5
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# class (C# リファレンス)
@@ -44,7 +37,7 @@ C# では、単一継承のみを使用できます。 つまり、クラスは
名前空間内で直接宣言され、他のクラスに入れ子にされていないクラスは、[public](../../../csharp/language-reference/keywords/public.md) または [internal](../../../csharp/language-reference/keywords/internal.md) のいずれかです。 クラスは既定で `internal` です。
-入れ子になったクラスを含め、クラス メンバーは、[パブリック](../../../csharp/language-reference/keywords/public.md)、 `protected internal`、[保護](../../../csharp/language-reference/keywords/protected.md)、[内部](../../../csharp/language-reference/keywords/internal.md)、[プライベート](../../../csharp/language-reference/keywords/private.md)、または`private protected`. メンバーは既定で [private](../../../csharp/language-reference/keywords/private.md) です。
+クラスのメンバー (入れ子にされているクラスも含む) は、[public](../../../csharp/language-reference/keywords/public.md)、`protected internal`、[protected](../../../csharp/language-reference/keywords/protected.md)、[internal](../../../csharp/language-reference/keywords/internal.md)、[private](../../../csharp/language-reference/keywords/private.md)、`private protected` のいずれかとして宣言できます。 メンバーは既定で [private](../../../csharp/language-reference/keywords/private.md) です。
詳細については、「[アクセス修飾子](../../../csharp/programming-guide/classes-and-structs/access-modifiers.md)」を参照してください。
@@ -99,7 +92,7 @@ Console.Write(child1.name); // Error
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[C# のキーワード](../../../csharp/language-reference/keywords/index.md)
diff --git a/docs/csharp/language-reference/keywords/delegate.md b/docs/csharp/language-reference/keywords/delegate.md
index 1b236f2b987..606d50a0d63 100644
--- a/docs/csharp/language-reference/keywords/delegate.md
+++ b/docs/csharp/language-reference/keywords/delegate.md
@@ -9,16 +9,16 @@ helpviewer_keywords:
- delegate keyword [C#]
- function pointers [C#]
ms.assetid: 0bb8cb6d-2f87-47c7-9d1f-d65c1cd01e9f
-ms.openlocfilehash: 923d746927063490236a721e8d2600889084dac0
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 4eafd0ffb6da191db80fd69f1980a167dbfc742b
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# delegate (C# リファレンス)
デリゲート型の宣言は、メソッド シグネチャに似ています。 戻り値 1 つのほか、任意の型のパラメーターをいくつでも指定することができます。
-```
+```csharp
public delegate void TestDelegate(string message);
public delegate int TestDelegate(MyType m, long num);
```
diff --git a/docs/csharp/language-reference/keywords/double.md b/docs/csharp/language-reference/keywords/double.md
index 28b773c700c..1b7e922df3f 100644
--- a/docs/csharp/language-reference/keywords/double.md
+++ b/docs/csharp/language-reference/keywords/double.md
@@ -7,11 +7,11 @@ f1_keywords:
helpviewer_keywords:
- double data type [C#]
ms.assetid: 0980e11b-6004-4102-abcf-cfc280fc6991
-ms.openlocfilehash: e2524c907781bd3ce618acb0bdd087acb4b10f75
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 3683b51dfd0ef653ab8bfff6705b96a37e21a10a
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# double (C# リファレンス)
`double` キーワードは、64 ビット浮動小数点値を格納する単純な型を示します。 次の表では、`double` 型の有効桁数とおおよその範囲を示します。
@@ -23,7 +23,7 @@ ms.lasthandoff: 05/04/2018
## リテラル
既定では、代入演算子の右辺にある実数値リテラルは `double` として扱われます。 ただし、整数を `double` として処理する場合、次のようにサフィックスの d または D を使用します。
-```
+```csharp
double x = 3D;
```
diff --git a/docs/csharp/language-reference/keywords/event.md b/docs/csharp/language-reference/keywords/event.md
index bceb23cf53b..e6739c4b126 100644
--- a/docs/csharp/language-reference/keywords/event.md
+++ b/docs/csharp/language-reference/keywords/event.md
@@ -1,10 +1,6 @@
---
title: event (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- event
- remove
@@ -13,14 +9,11 @@ f1_keywords:
helpviewer_keywords:
- event keyword [C#]
ms.assetid: 7858fd85-153b-4259-85d0-6aa13c35f174
-caps.latest.revision: 28
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: f7e7f9f96714f8988eb91d77c63cc4f017d040f5
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: b58e06c87ebf601daf231c83993ebe512f51ecd9
+ms.sourcegitcommit: 88f251b08bf0718ce119f3d7302f514b74895038
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/10/2018
---
# event (C# リファレンス)
`event` キーワードを使用し、パブリッシャー クラス内にイベントを宣言します。
@@ -28,11 +21,11 @@ ms.lasthandoff: 11/21/2017
## 例
次の例では、基になるデリゲート型として を使用するイベントを宣言し、発生させる方法について説明します。 完全なコード例については、「[方法: .NET Framework ガイドラインに準拠したイベントを発行する](../../../csharp/programming-guide/events/how-to-publish-events-that-conform-to-net-framework-guidelines.md)」を参照してください。完全なコード例では、ジェネリック デリゲート型の使用方法と、イベントをサブスクライブして、イベント ハンドラー メソッドを作成する方法も確認できます。
- [!code-csharp[csrefKeywordsModifiers#7](../../../csharp/language-reference/keywords/codesnippet/CSharp/event_1.cs)]
+ [!code-csharp[csrefKeywordsModifiers#7](~/samples/snippets/csharp/VS_Snippets_VBCSharp/csrefKeywordsModifiers/CS/csrefKeywordsModifiers.cs#7)]
イベントは、宣言元 (パブリッシャー クラス) のクラスまたは構造体内でしか呼び出せない特殊なマルチキャスト デリゲートです。 他のクラスまたは構造体がイベントを受信登録した場合、パブリッシャー クラスがイベントを発生させると、他のクラスまたは構造体のイベント ハンドラー メソッドが呼び出されます。 詳細およびコード例については、「[イベント](../../../csharp/programming-guide/events/index.md)」および「[デリゲート](../../../csharp/programming-guide/delegates/index.md)」を参照してください。
- としてマークできるイベント[パブリック](../../../csharp/language-reference/keywords/public.md)、[プライベート](../../../csharp/language-reference/keywords/private.md)、[保護](../../../csharp/language-reference/keywords/protected.md)、[内部](../../../csharp/language-reference/keywords/internal.md)、[内部保護](../../../csharp/language-reference/keywords/protected-internal.md)または[保護されたプライベート](../../../csharp/language-reference/keywords/private-protected.md)です。 これらのアクセス修飾子により、クラスのユーザーがイベントにアクセスする方法が定義されます。 詳細については、「[アクセス修飾子](../../../csharp/programming-guide/classes-and-structs/access-modifiers.md)」を参照してください。
+ イベントは、[public](../../../csharp/language-reference/keywords/public.md)、[private](../../../csharp/language-reference/keywords/private.md)、[protected](../../../csharp/language-reference/keywords/protected.md)、[internal](../../../csharp/language-reference/keywords/internal.md)、[protected internal](../../../csharp/language-reference/keywords/protected-internal.md) または [private protected](../../../csharp/language-reference/keywords/private-protected.md) としてマークできます。 これらのアクセス修飾子により、クラスのユーザーがイベントにアクセスする方法が定義されます。 詳細については、「[アクセス修飾子](../../../csharp/programming-guide/classes-and-structs/access-modifiers.md)」を参照してください。
## キーワードとイベント
イベントには次のキーワードが適用されます。
@@ -51,7 +44,7 @@ ms.lasthandoff: 11/21/2017
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[C# のキーワード](../../../csharp/language-reference/keywords/index.md)
diff --git a/docs/csharp/language-reference/keywords/extern.md b/docs/csharp/language-reference/keywords/extern.md
index c190962761f..161e3b7ca8f 100644
--- a/docs/csharp/language-reference/keywords/extern.md
+++ b/docs/csharp/language-reference/keywords/extern.md
@@ -8,16 +8,16 @@ helpviewer_keywords:
- DllImport attribute
- extern keyword [C#]
ms.assetid: 9c3f02c4-51b8-4d80-9cb2-f2b6e1ae15c7
-ms.openlocfilehash: f4fd42505937b2623ab9460489f5277364550d71
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 996888a585f8355bdda14e09b6bb9544257ae824
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# extern (C# リファレンス)
`extern` 修飾子は、外部で実装されるメソッドを宣言するために使用します。 `extern` 修飾子は一般に、相互運用サービスを使用してアンマネージ コードを呼び出すときに、`DllImport` 属性と共に使用します。 この場合、次の例に示すように、メソッドを `static` として宣言する必要もあります。
-```
+```csharp
[DllImport("avifil32.dll")]
private static extern void AVIFileInit();
```
@@ -52,7 +52,7 @@ int __declspec(dllexport) SampleMethod(int i)
3. 同じディレクトリに、次の C# ファイルを作成し、`cm.cs` という名前を付けます。
-```
+```csharp
// cm.cs
using System;
using System.Runtime.InteropServices;
diff --git a/docs/csharp/language-reference/keywords/floating-point-types-table.md b/docs/csharp/language-reference/keywords/floating-point-types-table.md
index b4c25f67772..f2dfe8187be 100644
--- a/docs/csharp/language-reference/keywords/floating-point-types-table.md
+++ b/docs/csharp/language-reference/keywords/floating-point-types-table.md
@@ -1,22 +1,16 @@
---
-title: "浮動小数点型の一覧表 (C# リファレンス)"
+title: 浮動小数点型の一覧表 (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology: devlang-csharp
-ms.topic: article
helpviewer_keywords:
- floating-point numbers [C#]
- ranges of floating-point types [C#]
- types [C#], floating-point types
ms.assetid: da886cc5-e01e-4f62-b3ec-6428c8f7a102
-caps.latest.revision: "11"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: be0db5bdc986534f964c34156da5fcc7752e1f8f
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 0a0d59e653138d5037eaec8d494313222e526ad8
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# 浮動小数点型の一覧表 (C# リファレンス)
次の表では、浮動小数点型の有効桁数とおおよその範囲を示します。
@@ -26,7 +20,7 @@ ms.lasthandoff: 11/21/2017
|[float](float.md)|±1.5e−45 から ±3.4e38|7 桁|
|[double](double.md)|±5.0e−324 から ±1.7e308|15-16 桁|
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[既定値の一覧表](default-values-table.md)
diff --git a/docs/csharp/language-reference/keywords/internal.md b/docs/csharp/language-reference/keywords/internal.md
index f8fa787ffff..dfa1d0f810e 100644
--- a/docs/csharp/language-reference/keywords/internal.md
+++ b/docs/csharp/language-reference/keywords/internal.md
@@ -1,29 +1,22 @@
---
title: internal (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- internal_CSharpKeyword
- internal
helpviewer_keywords:
- internal keyword [C#]
ms.assetid: 6ee0785c-d7c8-49b8-bb72-0a4dfbcb6461
-caps.latest.revision: 23
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: a3b115022ed2b38dfcfbbfad3c5fc00e0203b255
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: e636cb1edfa19b08c52ff09439e66aeb1424046a
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# internal (C# リファレンス)
`internal` キーワードは、型と型のメンバーを示す[アクセス修飾子](../../../csharp/language-reference/keywords/access-modifiers.md)です。
- > このページで対象`internal`アクセスします。 `internal`キーワードはまたの一部、 [ `protected internal` ](./protected-internal.md)アクセス修飾子。
+ > このページでは、`internal` アクセスについて説明します。 `internal` キーワードも [`protected internal`](./protected-internal.md) アクセス修飾子に含まれます。
internal 型またはメンバーは、次の例のように、同じアセンブリ内のファイルでのみアクセスできます。
@@ -95,7 +88,7 @@ public class TestAccess
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[C# のキーワード](../../../csharp/language-reference/keywords/index.md)
diff --git a/docs/csharp/language-reference/keywords/private-protected.md b/docs/csharp/language-reference/keywords/private-protected.md
index dbc03e4a67b..f571055b014 100644
--- a/docs/csharp/language-reference/keywords/private-protected.md
+++ b/docs/csharp/language-reference/keywords/private-protected.md
@@ -1,22 +1,18 @@
---
-title: "private protected (c# リファレンス)"
+title: private protected (C# リファレンス)
ms.date: 11/15/2017
-ms.prod: .net
-ms.technology: devlang-csharp
-ms.topic: article
author: sputier
-ms.author: wiwagn
-ms.openlocfilehash: 5f7abd2569d5bad5af64161042e4e5d21e741c8c
-ms.sourcegitcommit: 7e99f66ef09d2903e22c789c67ff5a10aa953b2f
+ms.openlocfilehash: b85b227989c9f79aa11486310f540b92ce5bdda6
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/18/2017
+ms.lasthandoff: 05/04/2018
---
-# private protected (c# リファレンス)
-`private protected`キーワードの組み合わせは、メンバー アクセス修飾子。 プライベート、プロテクト メンバーは、含んでいるアセンブリ内でのみが、外側のクラスから派生した型からアクセス可能です。 `private protected` と他のアクセス修飾子の比較については、「[アクセシビリティ レベル](../../../csharp/language-reference/keywords/accessibility-levels.md)」を参照してください。
+# private protected (C# リファレンス)
+キーワード組み合わせ `private protected` はメンバー アクセス修飾子です。 private protected メンバーには、包含クラスから誘導された型でアクセスできますが、その包含アセンブリ内に限られます。 `private protected` と他のアクセス修飾子の比較については、「[アクセシビリティ レベル](../../../csharp/language-reference/keywords/accessibility-levels.md)」を参照してください。
## 例
- 変数の静的な型が派生クラス型である場合にのみ、基底クラスのプライベート、プロテクト メンバーは、含んでいるアセンブリでの派生型からアクセス可能です。 たとえば、次のコード セグメントを考えてみます。
+ 基底クラスの private protected メンバーには、変数の静的な型が派生クラス型の場合にのみ、その包含アセンブリで派生型からアクセスできます。 たとえば、次のコード セグメントを考えてみます。
```
// Assembly1.cs
@@ -55,15 +51,15 @@ ms.lasthandoff: 11/18/2017
}
}
```
- この例には、2 つのファイル (`Assembly1.cs` と `Assembly2.cs`) が含まれています。 最初のファイルにはパブリック基底クラスが含まれています`BaseClass`、および、その派生型`DerivedClass1`です。 `BaseClass`プライベートのプロテクト メンバーを所有している`myValue`、どの`DerivedClass1`に 2 つの方法でアクセスしようとしています。 最初の試行にアクセスする`myValue`のインスタンスを通じて`BaseClass`でエラーが発生します。 ただし、継承されたメンバーとして使用しようとすると、`DerivedClass1`は成功します。
-2 番目のファイルへのアクセスに`myValue`の継承されたメンバーと`DerivedClass2`Assembly1 での派生型からアクセス可能なだけ、エラーが生成されます。
+ この例には、2 つのファイル (`Assembly1.cs` と `Assembly2.cs`) が含まれています。 最初のファイルには public 基底クラスである `BaseClass` とそれから派生した型である `DerivedClass1` が含まれています。 `BaseClass` は private protected メンバー `myValue` を持っています。`DerivedClass1` はこれに 2 通りのアクセスを試行します。 最初に `BaseClass` のインスタンス経由で `myValue` にアクセスしようとするとエラーが出ます。 ただし、`DerivedClass1` で継承されたメンバーとして使用してみると成功します。
+2 番目のファイルでは、`DerivedClass2` の継承されたメンバーとして `myValue` にアクセスしようとしてエラーを出します。これには Assembly1 の派生型のみがアクセスできるためです。
- 構造体のメンバーにすることはできません`private protected`のため、構造体は継承できません。
+ 構造体は継承できないため、構造体メンバーは `private protected` になりません。
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[C# のキーワード](../../../csharp/language-reference/keywords/index.md)
@@ -73,4 +69,4 @@ ms.lasthandoff: 11/18/2017
[public](../../../csharp/language-reference/keywords/public.md)
[private](../../../csharp/language-reference/keywords/private.md)
[internal](../../../csharp/language-reference/keywords/internal.md)
- [Internal virtual キーワードのセキュリティに関する注意事項](https://msdn.microsoft.com/library/heyd8kky(v=vs.110))
+ [Internal Virtual キーワードのセキュリティ関連事項](https://msdn.microsoft.com/library/heyd8kky(v=vs.110))
diff --git a/docs/csharp/language-reference/keywords/private.md b/docs/csharp/language-reference/keywords/private.md
index 463ffe6e040..bc894261fc1 100644
--- a/docs/csharp/language-reference/keywords/private.md
+++ b/docs/csharp/language-reference/keywords/private.md
@@ -1,29 +1,22 @@
---
title: private (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- private_CSharpKeyword
- private
helpviewer_keywords:
- private keyword [C#]
ms.assetid: 654c0bb8-e6ac-4086-bf96-7474fa6aa1c8
-caps.latest.revision: 17
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: d9cc8f86166888b47a758e200182d319c68ca6d4
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 26eab2912923c9fcae1ce930bd5b59a2740d500e
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# private (C# リファレンス)
`private` キーワードはメンバー アクセス修飾子です。
- > このページで対象`private`アクセスします。 `private`キーワードはまたの一部、 [ `private protected` ](./private-protected.md)アクセス修飾子。
+ > このページでは、`private` アクセスについて説明します。 `private` キーワードも [`private protected`](./private-protected.md) アクセス修飾子に含まれます。
プライベート アクセスは、最も制限の多いアクセス レベルです。 次の例に示すように、プライベート メンバーは、宣言されているクラスまたは構造体の本体内でのみアクセスできます。
@@ -49,7 +42,7 @@ class Employee
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[C# のキーワード](../../../csharp/language-reference/keywords/index.md)
diff --git a/docs/csharp/language-reference/keywords/protected-internal.md b/docs/csharp/language-reference/keywords/protected-internal.md
index fe60619cfd2..3fd2181a6c3 100644
--- a/docs/csharp/language-reference/keywords/protected-internal.md
+++ b/docs/csharp/language-reference/keywords/protected-internal.md
@@ -1,24 +1,20 @@
---
-title: "保護された内部 (c# リファレンス)"
+title: protected internal (C# リファレンス)
ms.date: 11/15/2017
-ms.prod: .net
-ms.technology: devlang-csharp
-ms.topic: article
author: sputier
-ms.author: wiwagn
-ms.openlocfilehash: f9004a5e8d65179c9ff2e30688e63c14c95ab431
-ms.sourcegitcommit: 7e99f66ef09d2903e22c789c67ff5a10aa953b2f
+ms.openlocfilehash: 5ba2c811a1a4f095bcee65ed6678a7dc50fe94db
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/18/2017
+ms.lasthandoff: 05/15/2018
---
-# 保護された内部 (c# リファレンス)
-`protected internal`キーワードの組み合わせは、メンバー アクセス修飾子。 プロテクト内部メンバーは、現在のアセンブリとは、含んでいるクラスから派生した型からアクセス可能です。 `protected internal` と他のアクセス修飾子の比較については、「[アクセシビリティ レベル](../../../csharp/language-reference/keywords/accessibility-levels.md)」を参照してください。
+# protected internal (C# リファレンス)
+キーワード組み合わせ `protected internal` はメンバー アクセス修飾子です。 protected internal メンバーには、現在のアセンブリから、または包含クラスから派生した型からアクセスできます。 `protected internal` と他のアクセス修飾子の比較については、「[アクセシビリティ レベル](../../../csharp/language-reference/keywords/accessibility-levels.md)」を参照してください。
## 例
- 基底クラスのプロテクト内部メンバーは、含んでいるアセンブリ内の任意の型からアクセスします。 派生クラス型の変数を使用して、アクセスが行われる場合にのみ、別のアセンブリ内にある派生クラスではアクセスもできます。 たとえば、次のコード セグメントを考えてみます。
+ 基底クラスのプロテクト内部メンバーは、包含アセンブリ内の任意の型からアクセスします。 派生クラス型の変数経由でアクセスする場合にのみ、別のアセンブリにある派生クラスでもアクセスできます。 たとえば、次のコード セグメントを考えてみます。
-```
+```csharp
// Assembly1.cs
// Compile with: /target:library
public class BaseClass
@@ -36,7 +32,7 @@ class TestAccess
}
```
-```
+```csharp
// Assembly2.cs
// Compile with: /reference:Assembly1.dll
class DerivedClass : BaseClass
@@ -55,14 +51,14 @@ class DerivedClass : BaseClass
}
}
```
- この例には、2 つのファイル (`Assembly1.cs` と `Assembly2.cs`) が含まれています。 最初のファイルにはパブリック基底クラスが含まれています`BaseClass`、および別のクラス、`TestAccess`です。 `BaseClass`プロテクトの内部メンバーを所有している`myValue`、によってアクセスされる、`TestAccess`型です。 2 番目のファイルへのアクセスに`myValue`のインスタンスを通じて`BaseClass`、派生クラスのインスタンスを使用してこのメンバーへのアクセス中にエラーが生成されます`DerivedClass`は成功します。
+ この例には、2 つのファイル (`Assembly1.cs` と `Assembly2.cs`) が含まれています。 最初のファイルには public 基底クラスである `BaseClass` ともう 1 つのクラスである `TestAccess` が含まれています。 `BaseClass` は protected internal メンバーの `myValue` を持っています。これは `TestAccess` 型にアクセスされます。 2 番目のファイルでは、`BaseClass` のインスタンス経由で `myValue` にアクセスしようとするとエラーが発生します。一方で、派生クラス `DerivedClass` のインスタンスからこのメンバーにアクセスすると成功します。
- 構造体のメンバーにすることはできません`protected internal`のため、構造体は継承できません。
+ 構造体は継承できないため、構造体メンバーは `protected internal` になりません。
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[C# のキーワード](../../../csharp/language-reference/keywords/index.md)
@@ -72,4 +68,4 @@ class DerivedClass : BaseClass
[public](../../../csharp/language-reference/keywords/public.md)
[private](../../../csharp/language-reference/keywords/private.md)
[internal](../../../csharp/language-reference/keywords/internal.md)
- [Internal virtual キーワードのセキュリティに関する注意事項](https://msdn.microsoft.com/library/heyd8kky(v=vs.110))
+ [Internal Virtual キーワードのセキュリティ関連事項](https://msdn.microsoft.com/library/heyd8kky(v=vs.110))
diff --git a/docs/csharp/language-reference/keywords/protected.md b/docs/csharp/language-reference/keywords/protected.md
index 7e2fceaa13d..54daf7e70a6 100644
--- a/docs/csharp/language-reference/keywords/protected.md
+++ b/docs/csharp/language-reference/keywords/protected.md
@@ -1,29 +1,22 @@
---
title: protected (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- protected
- protected_CSharpKeyword
helpviewer_keywords:
- protected keyword [C#]
ms.assetid: 05ce3794-6675-4025-bddb-eaaa0ec22892
-caps.latest.revision: 20
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 18278ed28f899d9030d6056eca9bbe83ebec04c4
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: a3115fe82b452f52ee75cf222302ece0fc67b330
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# protected (C# リファレンス)
`protected` キーワードはメンバー アクセス修飾子です。
- > このページで対象`protected`アクセスします。 `protected`キーワードはまたの一部、 [ `protected internal` ](./protected-internal.md)と[ `private protected` ](./private-protected.md)アクセス修飾子。
+ > このページでは、`protected` アクセスについて説明します。 `protected` キーワードもアクセス修飾子の [`protected internal`](./protected-internal.md) と [`private protected`](./private-protected.md) に含まれます。
protected メンバーは、そのクラス内部と、派生クラスのインスタンスからアクセスできます。
@@ -52,7 +45,7 @@ protected メンバーは、そのクラス内部と、派生クラスのイン
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[C# のキーワード](../../../csharp/language-reference/keywords/index.md)
@@ -62,4 +55,4 @@ protected メンバーは、そのクラス内部と、派生クラスのイン
[public](../../../csharp/language-reference/keywords/public.md)
[private](../../../csharp/language-reference/keywords/private.md)
[internal](../../../csharp/language-reference/keywords/internal.md)
- [Internal virtual キーワードのセキュリティに関する注意事項](https://msdn.microsoft.com/library/heyd8kky(v=vs.110))
\ No newline at end of file
+ [Internal Virtual キーワードのセキュリティ関連事項](https://msdn.microsoft.com/library/heyd8kky(v=vs.110))
\ No newline at end of file
diff --git a/docs/csharp/language-reference/keywords/public.md b/docs/csharp/language-reference/keywords/public.md
index b2224c1e26e..596436c0147 100644
--- a/docs/csharp/language-reference/keywords/public.md
+++ b/docs/csharp/language-reference/keywords/public.md
@@ -7,16 +7,16 @@ f1_keywords:
helpviewer_keywords:
- public keyword [C#]
ms.assetid: 0ae45d16-a551-4b74-9845-57208de1328e
-ms.openlocfilehash: abf7219359c108108b1ce3a3fde3dc10f9a8732d
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 9bef5d076d9ab84aa15e2cdec2d176db8d1ac82b
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# public (C# リファレンス)
`public` キーワードは、型と型のメンバーを示すアクセス修飾子です。 パブリック アクセスは、最も制限の少ないアクセス レベルです。 次の例のように、パブリック メンバーへのアクセスには制限がありません。
-```
+```csharp
class SampleClass
{
public int x; // No access restrictions.
diff --git a/docs/csharp/language-reference/keywords/sealed.md b/docs/csharp/language-reference/keywords/sealed.md
index ea8059fa5cf..dbe5c3ca56c 100644
--- a/docs/csharp/language-reference/keywords/sealed.md
+++ b/docs/csharp/language-reference/keywords/sealed.md
@@ -7,16 +7,16 @@ f1_keywords:
helpviewer_keywords:
- sealed keyword [C#]
ms.assetid: 8e4ed5d3-10be-47db-9488-0da2008e6f3f
-ms.openlocfilehash: 8cfeb77021aaf1b0eb23401be4d5f6fd50a40b03
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: bd4fe2cfe80930c121a11d03c848b2c4eca152d6
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# sealed (C# リファレンス)
`sealed` 修飾子をクラスに適用すると、それ以外のクラスが、そのクラスから継承できなくなります。 次の例では、`B` クラスは `A` クラスを継承しますが、`B` クラスからはどのクラスも継承できなくなります。
-```
+```csharp
class A {}
sealed class B : A {}
```
diff --git a/docs/csharp/language-reference/keywords/string.md b/docs/csharp/language-reference/keywords/string.md
index da47bfc4fdb..8ee13faa93a 100644
--- a/docs/csharp/language-reference/keywords/string.md
+++ b/docs/csharp/language-reference/keywords/string.md
@@ -10,11 +10,11 @@ helpviewer_keywords:
- string literals [C#]
- string keyword [C#]
ms.assetid: 3037e558-fb22-494d-bca1-a15ade11b11a
-ms.openlocfilehash: 748016682db6e02cadbfb8c767391a18d48e1286
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: f92a44283e59bd80421758a63b40bc5289c3628b
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# string (C# リファレンス)
`string` 型は、0 個以上の Unicode 文字のシーケンスを表します。 `string` は .NET の の別名です。
@@ -62,7 +62,7 @@ char x = str[2]; // x = 's';
リテラル文字列には、任意の文字リテラルを含めることができます。 これにはエスケープ シーケンスが含まれます。 次の例では、円記号にエスケープ シーケンス `\\`、文字 f に `\u0066`、改行に `\n` を使用しています。
-```
+```csharp
string a = "\\\u0066\n";
Console.WriteLine(a);
```
diff --git a/docs/csharp/language-reference/keywords/struct.md b/docs/csharp/language-reference/keywords/struct.md
index 3b11ccfa4fe..a769f0eb1e6 100644
--- a/docs/csharp/language-reference/keywords/struct.md
+++ b/docs/csharp/language-reference/keywords/struct.md
@@ -7,16 +7,16 @@ helpviewer_keywords:
- struct keyword [C#]
- structs [C#], struct keyword
ms.assetid: ff3dd9b7-dc93-4720-8855-ef5558f65c7c
-ms.openlocfilehash: 5a4863bc93a115d14e791509f99b7b13bee9f68f
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: ddea59e76835ccccd07c299f819796336cddada8
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# struct (C# リファレンス)
`struct` 型は、通常、関連する変数 (四角形の座標やインベントリ内の項目の特性など) の小さなグループをカプセル化するのに使用される値型です。 次の例に単純な構造体の宣言を示します。
-```
+```csharp
public struct Book
{
public decimal price;
diff --git a/docs/csharp/language-reference/keywords/this.md b/docs/csharp/language-reference/keywords/this.md
index b02fc9d0a1a..e7edf8285a0 100644
--- a/docs/csharp/language-reference/keywords/this.md
+++ b/docs/csharp/language-reference/keywords/this.md
@@ -8,11 +8,11 @@ f1_keywords:
helpviewer_keywords:
- this keyword [C#]
ms.assetid: d4f827fe-4710-410b-89b8-867dad44b8a3
-ms.openlocfilehash: d26ad1565dc6faf8aba6c971b3a0023bac886775
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 04496079114be45388926993b67e8f1d3f2e9f15
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# this (C# リファレンス)
`this` キーワードはクラスの現在のインスタンスを参照します。拡張メソッドの最初のパラメーターの修飾子としても使用されます。
@@ -28,7 +28,7 @@ ms.lasthandoff: 05/04/2018
- オブジェクトを他のメソッドにパラメーターとして渡す場合は次のようになります。
- ```
+ ```csharp
CalcTax(this);
```
diff --git a/docs/csharp/language-reference/keywords/typeof.md b/docs/csharp/language-reference/keywords/typeof.md
index 3ea1b90dd64..1488217560c 100644
--- a/docs/csharp/language-reference/keywords/typeof.md
+++ b/docs/csharp/language-reference/keywords/typeof.md
@@ -7,23 +7,23 @@ f1_keywords:
helpviewer_keywords:
- typeof keyword [C#]
ms.assetid: 0c08d880-515e-46bb-8cd2-48b8dd62c08d
-ms.openlocfilehash: be79fa4f2cfb1119a50201bf6c18a144726f2f21
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 4203b597d7045a13ffed9e61ddbbde57e2113c23
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# typeof (C# リファレンス)
型の `System.Type` オブジェクトを取得するために使用されます。 `typeof` 式は次の形式になります。
-```
+```csharp
System.Type type = typeof(int);
```
## コメント
式の実行時の型を取得する場合は、次の例のように、.NET Framework のメソッド を使用できます。
-```
+```csharp
int i = 0;
System.Type type = i.GetType();
```
@@ -32,7 +32,7 @@ System.Type type = i.GetType();
`typeof` 演算子は、オープン ジェネリック型に対しても使用できます。 複数の型パラメーターを持つ型には、適切な数のコンマを指定する必要があります。 次の例は、メソッドの戻り値の型がジェネリック であるかどうかを確認する方法を示しています。 ここでは、メソッドが MethodInfo 型のインスタンスであると仮定します。
-```
+```csharp
string s = method.ReturnType.GetInterface
(typeof(System.Collections.Generic.IEnumerable<>).FullName);
```
diff --git a/docs/csharp/language-reference/keywords/using-directive.md b/docs/csharp/language-reference/keywords/using-directive.md
index c8046d578a7..86e9297b1dc 100644
--- a/docs/csharp/language-reference/keywords/using-directive.md
+++ b/docs/csharp/language-reference/keywords/using-directive.md
@@ -1,21 +1,14 @@
---
title: using ディレクティブ (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
helpviewer_keywords:
- using directive [C#]
ms.assetid: b42b8e61-5e7e-439c-bb71-370094b44ae8
-caps.latest.revision: 31
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 02c50b1e7a54d776985b60570c898e7d0739c44c
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 180c038987e7de6b39a8eae0e86871eea41a40bb
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# using ディレクティブ (C# リファレンス)
`using` ディレクティブは、次の 3 つの用途で使用します。
@@ -64,9 +57,9 @@ class Program
`using` ディレクティブを作成すると、名前空間内の型を、名前空間を指定することなく使用できます。 `using` ディレクティブでは、指定した名前空間に入れ子になった別の名前空間へのアクセスは許可されません。
- 名前空間は、ユーザー定義とシステム定義の 2 つのカテゴリに分類されます。 ユーザー定義の名前空間は、コードで定義された名前空間です。 システム定義の名前空間の一覧は、次を参照してください。 [.NET Framework クラス ライブラリの概要](../../../standard/class-library-overview.md)です。
+ 名前空間は、ユーザー定義とシステム定義の 2 つのカテゴリに分類されます。 ユーザー定義の名前空間は、コードで定義された名前空間です。 システム定義の名前空間の一覧については、[.NET Framework クラス ライブラリの概要](../../../standard/class-library-overview.md)に関するページを参照してください。
- 他のアセンブリ内のメソッドを参照している例については、次を参照してください。[作成および使用するアセンブリは、コマンドラインを使用して](../../programming-guide/concepts/assemblies-gac/how-to-create-and-use-assemblies-using-the-command-line.md)です。
+ 他のアセンブリのメソッドを参照する方法の例については、[コマンド ラインでアセンブリを作成し、使用する](../../programming-guide/concepts/assemblies-gac/how-to-create-and-use-assemblies-using-the-command-line.md)方法に関するページをご覧ください。
## 例 1
@@ -85,7 +78,7 @@ class Program
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[名前空間の使用](../../../csharp/programming-guide/namespaces/using-namespaces.md)
diff --git a/docs/csharp/language-reference/keywords/using-statement.md b/docs/csharp/language-reference/keywords/using-statement.md
index dc1f2aa3ba3..e08575a7c77 100644
--- a/docs/csharp/language-reference/keywords/using-statement.md
+++ b/docs/csharp/language-reference/keywords/using-statement.md
@@ -1,21 +1,14 @@
---
title: using ステートメント (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
helpviewer_keywords:
- using statement [C#]
ms.assetid: afc355e6-f0b9-4240-94dd-0d93f17d9fc3
-caps.latest.revision: 31
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 1fdf37e1bfc57bf850b332f167e57d3e05d23e78
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: fa27039e8444090c8a516b92ba5ab62c7f93c51a
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# using ステートメント (C# リファレンス)
オブジェクトの正しい使用を保証する簡易構文を提供します。
@@ -28,7 +21,7 @@ ms.lasthandoff: 11/21/2017
## コメント
と は、アンマネージ リソース (この場合はファイル ハンドルとデバイス コンテキスト) にアクセスするマネージ型の例です。 アンマネージ リソースや、それをカプセル化するクラス ライブラリ型は他にもたくさんあります。 このような型はすべて、 インターフェイスを実装する必要があります。
-ときの有効期間、 `IDisposable` 1 つのメソッドに制限は、オブジェクトが宣言しでインスタンス化する必要があります、`using`ステートメントです。 `using` ステートメントは、オブジェクトで正しく メソッドを呼び出します。(前述のようにこのステートメントを使用する場合) が呼び出されるとすぐに、オブジェクト自体がスコープの外側に出されます。 オブジェクトは、`using` ブロック内では読み取り専用です。変更したり再割り当てしたりすることはできません。
+`IDisposable` オブジェクトの有効期間が 1 つのメソッドに限定されているとき、それを `using` ステートメントで宣言し、インスタンス化してください。 `using` ステートメントは、オブジェクトで正しく メソッドを呼び出します。(前述のようにこのステートメントを使用する場合) が呼び出されるとすぐに、オブジェクト自体がスコープの外側に出されます。 オブジェクトは、`using` ブロック内では読み取り専用です。変更したり再割り当てしたりすることはできません。
`using` ステートメントを使用すると、オブジェクトでのメソッドの呼び出し中に例外が発生した場合でも が必ず呼び出されます。 オブジェクトを try ブロックに配置し、finally ブロックで を呼び出しても、同じ結果が得られます。実際には、コンパイラは `using` ステートメントをこのように変換します。 前のコード例は、コンパイル時に次のコードに展開されます (オブジェクトのスコープ制限を定義する中かっこが加えられていることに注意してください)。
@@ -42,12 +35,12 @@ ms.lasthandoff: 11/21/2017
[!code-csharp[csrefKeywordsNamespace#7](../../../csharp/language-reference/keywords/codesnippet/CSharp/using-statement_4.cs)]
-破棄の詳細については`IDisposable`、オブジェクトを参照してください[IDisposable を実装するオブジェクトを使用して](../../../standard/garbage-collection/using-objects.md)です。
+`IDisposable` オブジェクトの破棄に関する詳細については、「[IDisposable を実装するオブジェクトの使用](../../../standard/garbage-collection/using-objects.md)」を参照してください。
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[C# のキーワード](../../../csharp/language-reference/keywords/index.md)
diff --git a/docs/csharp/language-reference/keywords/using-static.md b/docs/csharp/language-reference/keywords/using-static.md
index 769a017248d..f76ec2ea86c 100644
--- a/docs/csharp/language-reference/keywords/using-static.md
+++ b/docs/csharp/language-reference/keywords/using-static.md
@@ -1,20 +1,16 @@
---
title: using static ディレクティブ (C# リファレンス)
ms.date: 03/10/2017
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
helpviewer_keywords:
- using static directive [C#]
ms.assetid: 8b8f9e34-c75e-469b-ba85-6f2eb4090314
author: rpetrusha
ms.author: ronpet
-ms.openlocfilehash: 5838bede475cf2ad1b72518770241e86206a06bb
-ms.sourcegitcommit: 7e99f66ef09d2903e22c789c67ff5a10aa953b2f
+ms.openlocfilehash: c9b7508c6e751f83fdc16a700ad68aa7de36e497
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/18/2017
+ms.lasthandoff: 05/04/2018
---
# using static ディレクティブ (C# リファレンス)
@@ -52,7 +48,7 @@ using static
[!code-csharp[using-static#3](../../../../samples/snippets/csharp/language-reference/keywords/using/using-static3.cs)]
-上の例では、`using static` ディレクティブを 型に適用することもできます。 これは必要を呼び出すこと、型名を指定せずメソッドです。 ただし、どの数値型の `TryParse` メソッドが呼び出されたかを判断するために `using static` ステートメントを確認する必要が出てくるため、コードが読みにくくなります。
+上の例では、`using static` ディレクティブを 型に適用することもできます。 それにより、型名を指定せずに、 メソッドを呼び出せるようになります。 ただし、どの数値型の `TryParse` メソッドが呼び出されたかを判断するために `using static` ステートメントを確認する必要が出てくるため、コードが読みにくくなります。
## 関連項目
diff --git a/docs/csharp/language-reference/keywords/value-types.md b/docs/csharp/language-reference/keywords/value-types.md
index 58aa447bfe3..3ac6589b978 100644
--- a/docs/csharp/language-reference/keywords/value-types.md
+++ b/docs/csharp/language-reference/keywords/value-types.md
@@ -8,11 +8,11 @@ helpviewer_keywords:
- types [C#], value types
- C# language, value types
ms.assetid: 471eb994-2958-49d5-a6be-19b4313f80a3
-ms.openlocfilehash: fdda6942c6883baaaea5e305a1e699a01e707d2b
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 49043a9fe9eabbb54176a0106007ef0d26ed795f
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# 値型 (C# リファレンス)
値型は、次の 2 つの主要なカテゴリで構成されます。
@@ -56,31 +56,31 @@ ms.lasthandoff: 05/04/2018
## 値型の初期化
C# では、ローカル変数を使用する前に初期化する必要があります。 たとえば、次の例のように、初期化せずにローカル変数を宣言した場合、
-```
+```csharp
int myInt;
```
初期化してからでないとこれを使用することはできません。 次のステートメントを使用して初期化できます。
-```
+```csharp
myInt = new int(); // Invoke default constructor for int type.
```
このステートメントは、次のステートメントと同じです。
-```
+```csharp
myInt = 0; // Assign an initial value, 0 in this example.
```
もちろん、次の例のように、宣言と初期化を同じステートメントに含めることができます。
-```
+```csharp
int myInt = new int();
```
または
-```
+```csharp
int myInt = 0;
```
@@ -88,7 +88,7 @@ int myInt = 0;
ユーザー定義型では、[new](../../../csharp/language-reference/keywords/new.md) を使用して既定のコンストラクターを呼び出します。 たとえば、次のステートメントは、`Point` 構造体の既定のコンストラクターを呼び出します。
-```
+```csharp
Point p = new Point(); // Invoke default constructor for the struct.
```
diff --git a/docs/csharp/language-reference/keywords/var.md b/docs/csharp/language-reference/keywords/var.md
index 909c014433f..bfb005ad834 100644
--- a/docs/csharp/language-reference/keywords/var.md
+++ b/docs/csharp/language-reference/keywords/var.md
@@ -7,16 +7,16 @@ f1_keywords:
helpviewer_keywords:
- var keyword [C#]
ms.assetid: 0777850a-2691-4e3e-927f-0c850f5efe15
-ms.openlocfilehash: 58c7e29840cfb536e2d1afd48b0ff2ca65b1c0c2
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: c311993ebcc5b5072959b2e79242bcdabd6de913
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# var (C# リファレンス)
Visual C# 3.0 以降、メソッド スコープで宣言された変数には暗黙的な "型" `var` を与えることができます。 暗黙的に型指定されたローカル変数では、型を自分で宣言した場合と同様に厳密に型指定されますが、コンパイラが型を決定します。 次の 2 つの `i` の宣言は機能的に等しくなります。
-```
+```csharp
var i = 10; // implicitly typed
int i = 10; //explicitly typed
```
diff --git a/docs/csharp/language-reference/keywords/virtual.md b/docs/csharp/language-reference/keywords/virtual.md
index 9374677ce20..622b5d96b4e 100644
--- a/docs/csharp/language-reference/keywords/virtual.md
+++ b/docs/csharp/language-reference/keywords/virtual.md
@@ -1,29 +1,22 @@
---
title: virtual (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- virtual_CSharpKeyword
- virtual
helpviewer_keywords:
- virtual keyword [C#]
ms.assetid: 5da9abae-bc1e-434f-8bea-3601b8dcb3b2
-caps.latest.revision: 26
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: dce3333646bca6f558e3760849b6cffdb34a6c0b
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 5a188e9a7cbb7a1c497d577039c2b2578eaa7526
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/15/2018
---
# virtual (C# リファレンス)
`virtual` キーワードは、メソッド、プロパティ、インデクサー、またはイベント宣言を変更し、それを派生クラスでオーバーライドできるようにするために使用されます。 たとえば、次のメソッドはそれを継承する任意のクラスでオーバーライドできます。
-```
+```csharp
public virtual double Area()
{
return x * y;
@@ -37,7 +30,7 @@ public virtual double Area()
既定では、メソッドは仮想ではありません。 非仮想メソッドをオーバーライドすることはできません。
- 使用することはできません、`virtual`修飾子を`static`、 `abstract`、 `private`、または`override`修飾子です。 次のコードは、仮想のプロパティの例です。
+ `virtual` 修飾子を、`static`、`abstract`、`private`、`override` 修飾子と共に使用することはできません。 次のコードは、仮想のプロパティの例です。
[!code-csharp[csrefKeywordsModifiers#26](../../../csharp/language-reference/keywords/codesnippet/CSharp/virtual_1.cs)]
@@ -52,7 +45,7 @@ public virtual double Area()
次の宣言に示すように、継承されたクラス (`Circle`、 `Sphere`、および `Cylinder`) はいずれも、基底クラスを初期化するコンス トラクターを使用します。
-```
+```csharp
public Cylinder(double r, double h): base(r, h) {}
```
@@ -63,7 +56,7 @@ public Cylinder(double r, double h): base(r, h) {}
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[修飾子](../../../csharp/language-reference/keywords/modifiers.md)
diff --git a/docs/csharp/language-reference/keywords/volatile.md b/docs/csharp/language-reference/keywords/volatile.md
index d157a81b8ef..a969f18dfaf 100644
--- a/docs/csharp/language-reference/keywords/volatile.md
+++ b/docs/csharp/language-reference/keywords/volatile.md
@@ -1,24 +1,17 @@
---
title: volatile (C# リファレンス)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- volatile_CSharpKeyword
- volatile
helpviewer_keywords:
- volatile keyword [C#]
ms.assetid: 78089bc7-7b38-4cfd-9e49-87ac036af009
-caps.latest.revision: 29
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 1cefa39313c3c551e8d05fbc31e528b86c6888d9
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 7f3aafc1255667f2a3917c6e171ce4ddf0343b41
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# volatile (C# リファレンス)
`volatile` キーワードは、同時に実行されている複数のスレッドによって、フィールドが変更される可能性があることを示します。 `volatile` と宣言されているフィールドは、シングル スレッドによるアクセスを前提とする、コンパイラの最適化の対象にはなりません。 このため、フィールドには常に最新の値が含まれます。
@@ -47,14 +40,14 @@ ms.lasthandoff: 11/21/2017
[!code-csharp[csrefKeywordsModifiers#24](../../../csharp/language-reference/keywords/codesnippet/CSharp/volatile_1.cs)]
## 例
- 次の例は、補助スレッドつまりワーカー スレッドを作成および使用して、プライマリ スレッドとの並行処理を実行する方法を示しています。 マルチスレッドの背景情報については、[スレッド化](../../../standard/threading/index.md)に関するページと「[スレッド処理](../../programming-guide/concepts/threading/index.md)」を参照してください。
+ 次の例は、補助スレッドつまりワーカー スレッドを作成および使用して、プライマリ スレッドとの並行処理を実行する方法を示しています。 マルチスレッドの背景情報については、[スレッド化 (C#)](../../../standard/threading/index.md) と[マネージド スレッド処理](../../programming-guide/concepts/threading/index.md)に関するページを参照してください。
[!code-csharp[csProgGuideThreading#1](../../../csharp/language-reference/keywords/codesnippet/CSharp/volatile_2.cs)]
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[C# のキーワード](../../../csharp/language-reference/keywords/index.md)
diff --git a/docs/csharp/language-reference/operators/addition-assignment-operator.md b/docs/csharp/language-reference/operators/addition-assignment-operator.md
index 397e1394daa..7855b84a338 100644
--- a/docs/csharp/language-reference/operators/addition-assignment-operator.md
+++ b/docs/csharp/language-reference/operators/addition-assignment-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- += operator [C#]
- addition assignment operator (+=) [C#]
ms.assetid: 9cdf97e6-331d-492b-85e1-3ec3171484e9
-ms.openlocfilehash: 90967dcdccfb71995ac83e0dd52ea7bd86f136be
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: bcd56acad8e2b08585e5ae60f1c3cf8183b5664a
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# += 演算子 (C# リファレンス)
加算代入演算子です。
@@ -19,13 +19,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次のような `+=` 代入演算子を使用する式があるとします
-```
+```csharp
x += y
```
上記の式は、次の式と同じです。
-```
+```csharp
x = x + y
```
diff --git a/docs/csharp/language-reference/operators/and-assignment-operator.md b/docs/csharp/language-reference/operators/and-assignment-operator.md
index bad6fbbb5b8..3ba902be939 100644
--- a/docs/csharp/language-reference/operators/and-assignment-operator.md
+++ b/docs/csharp/language-reference/operators/and-assignment-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- AND assignment operator (&=) [C#]
- '&= operator [C#]'
ms.assetid: e8d58f3f-72dd-4b5a-b995-452fcce7e6bb
-ms.openlocfilehash: a749cf2f73faa80df49699b1e466cde290ed386e
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 092f46ddd8ca52e2d705200768c93a3473f1520f
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# &= 演算子 (C# リファレンス)
AND 代入演算子です。
@@ -19,13 +19,13 @@ AND 代入演算子です。
## コメント
次のような `&=` 代入演算子を使用する式があるとします
-```
+```csharp
x &= y
```
上記の式は、次の式と同じです。
-```
+```csharp
x = x & y
```
diff --git a/docs/csharp/language-reference/operators/conditional-and-operator.md b/docs/csharp/language-reference/operators/conditional-and-operator.md
index c5cf5fb18a8..d03a74357a9 100644
--- a/docs/csharp/language-reference/operators/conditional-and-operator.md
+++ b/docs/csharp/language-reference/operators/conditional-and-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- '&& operator [C#]'
- logical AND operator [C#]
ms.assetid: 2e4f0a1c-92a3-40f8-8e3b-17b607f20c31
-ms.openlocfilehash: 86508c6eeb2998c6f202608f9204b72b60786e4a
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 15bb3e9702f04cc805af63767c7ecbfc68160368
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# && 演算子 (C# リファレンス)
条件 AND 演算子 (`&&`) では `bool` オペランドの論理 AND が実行されますが、2 番目のオペランドは必要な場合にのみ評価されます。
@@ -19,13 +19,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次の演算は、
-```
+```csharp
x && y
```
次の演算に対応しています。
-```
+```csharp
x & y
```
diff --git a/docs/csharp/language-reference/operators/conditional-or-operator.md b/docs/csharp/language-reference/operators/conditional-or-operator.md
index 57a47710de4..cb977c1e880 100644
--- a/docs/csharp/language-reference/operators/conditional-or-operator.md
+++ b/docs/csharp/language-reference/operators/conditional-or-operator.md
@@ -8,11 +8,11 @@ helpviewer_keywords:
- conditional-OR operator (||) [C#]
- '|| operator [C#]'
ms.assetid: 7d442d8e-400d-421f-b4d2-034bf82bcbdc
-ms.openlocfilehash: ce0834874f9c5b4c5154a798492600d6ac45a4c6
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: d22e57d097edb0fe52b604e9c6431e167c410f0b
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# || 演算子 (C# リファレンス)
条件付き OR 演算子 (`||`) では、`bool` オペランドの論理 OR が実行されます。 最初のオペランドが `true` と評価されると、2 番目のオペランドは評価されません。 最初のオペランドが `false` と評価されると、2 番目の演算子は、OR 式を、全体として、`true` または `false` に評価するかどうかを判断します。
@@ -20,13 +20,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次の演算は、
-```
+```csharp
x || y
```
次の演算に対応しています。
-```
+```csharp
x | y
```
diff --git a/docs/csharp/language-reference/operators/dereference-operator.md b/docs/csharp/language-reference/operators/dereference-operator.md
index e20eab2572f..c440d511bdf 100644
--- a/docs/csharp/language-reference/operators/dereference-operator.md
+++ b/docs/csharp/language-reference/operators/dereference-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- member access operator (->) [C#]
- -> operator [C#]
ms.assetid: e39ccdc1-f1ff-4a92-bf1d-ac2c8c11316a
-ms.openlocfilehash: 09d67b8386da371f7d98a8171f60298b316091ea
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 037229b2081a43077cb4b5d02a8929b06ba9e077
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# -> 演算子 (C# リファレンス)
`->` 演算子は、ポインターの逆参照とメンバー アクセスを組み合わせます。
@@ -19,13 +19,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次のような形式の式があるとします。
-```
+```csharp
x->y
```
ここで、`x` は `T*` 型のポインター、`y` は `T` のメンバーです。この式は次の式と同じです。
-```
+```csharp
(*x).y
```
diff --git a/docs/csharp/language-reference/operators/division-assignment-operator.md b/docs/csharp/language-reference/operators/division-assignment-operator.md
index 1297ec6debf..9e2890f268e 100644
--- a/docs/csharp/language-reference/operators/division-assignment-operator.md
+++ b/docs/csharp/language-reference/operators/division-assignment-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- division assignment operator (/=) [C#]
- /= (division assignment operator) [C#]
ms.assetid: 50fc02b0-ee9c-4c3e-b58d-d591282caf1c
-ms.openlocfilehash: 1d9b918c66ce361067d906a055df5adb25a5a308
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: c31ff374e6af4c08c329a971fdd8af169e239395
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# /= 演算子 (C# リファレンス)
除算代入演算子です。
@@ -19,13 +19,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次のような `/=` 代入演算子を使用する式があるとします
-```
+```csharp
x /= y
```
上記の式は、次の式と同じです。
-```
+```csharp
x = x / y
```
diff --git a/docs/csharp/language-reference/operators/lambda-operator.md b/docs/csharp/language-reference/operators/lambda-operator.md
index ef9617d8344..e3f49b8e54f 100644
--- a/docs/csharp/language-reference/operators/lambda-operator.md
+++ b/docs/csharp/language-reference/operators/lambda-operator.md
@@ -1,31 +1,25 @@
---
title: => 演算子 (C# リファレンス)
ms.date: 10/02/2017
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- =>_CSharpKeyword
helpviewer_keywords:
- lambda operator [C#]
- => operator [C#]
- lambda expressions [C#], => operator
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 44cb0485aefa8b0ab10a00ae0525180020ce436d
-ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e
+ms.openlocfilehash: d1565e262fbd3ebcee2d1576a2a0c8ed3ba8ce38
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 10/18/2017
+ms.lasthandoff: 05/04/2018
---
# => 演算子 (C# リファレンス)
-`=>`演算子は、c# での 2 つの方法で使用できます。
+C# では、`=>` 演算子を 2 通りの方法で使用できます。
-- として、[ラムダ演算子](#lamba-operator)で、[ラムダ式](../../lambda-expressions.md)、入力変数をラムダの本体から分離しています。
+- [ラムダ式](../../lambda-expressions.md)の[ラムダ演算子](#lamba-operator)として使用する場合、入力変数とラムダ本体が切り離されます。
-- [式の本体の定義](#expression-body-definition)メンバー名、メンバーの実装から分離します。
+- [式本体の定義](#expression-body-definition)で、メンバー名とメンバー実装が切り離されます。
## ラムダ演算子
@@ -88,24 +82,24 @@ static void Main(string[] args)
// nine
}
```
-## 式の本体の定義
+## 式本体の定義
-式本体の定義は、高度に圧縮された、読み取り可能な形式でメンバーの実装を提供します。 次の一般的な構文があります。
+式本体の定義を使用すると、メンバーの実装が簡潔でわかりやすい形式になります。 一般的な構文は次のようになります。
```csharp
member => expression;
```
-この *expression* には有効な式を指定します。 注意してください*式*できます、*ステートメント式*だけで、メンバーの戻り値の型が`void`メンバーがコンス トラクターまたはファイナライザーの場合またはします。
+この *expression* には有効な式を指定します。 メンバーの戻り値の型が `void` の場合か、メンバーがコンストラクターかファイナライザーの場合にのみ、*式*は*ステートメント式*になります。
-メソッドとプロパティの get ステートメントの式の本体の定義は、以降 C# 6 でサポートされます。 式の本文の定義のコンス トラクター、ファイナライザー、プロパティの set ステートメント、し、インデクサーの c# 7 以降がサポートされています。
+メソッドとプロパティの get ステートメントの場合、C# 6 以降で式本体の定義を利用できます。 コンストラクター、ファイナライザー、プロパティの set ステートメント、インデクサーの場合、C# 7 以降で式本体の定義を利用できます。
-次の式本体の定義は、`Person.ToString`メソッド。
+`Person.ToString` メソッドの式本体の定義は次のようになります。
```csharp
public override string ToString() => $"{fname} {lname}".Trim();
```
-次のメソッド定義のためのショートハンド バージョンであります。
+次のメソッド定義を短くしたものです。
```csharp
public override string ToString()
@@ -113,10 +107,10 @@ public override string ToString()
return $"{fname} {lname}".Trim();
}
```
-詳細については式の本文の定義についてを参照してください。[式の本文メンバー](../../programming-guide/statements-expressions-operators/expression-bodied-members.md)です。
+式本体の定義の詳細については、[式形式メンバー](../../programming-guide/statements-expressions-operators/expression-bodied-members.md)に関するページを参照してください。
-## 関連項目
+## 参照
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[ラムダ式](../../../csharp/programming-guide/statements-expressions-operators/lambda-expressions.md)
-[式の本文メンバー](../../programming-guide/statements-expressions-operators/expression-bodied-members.md)です。
\ No newline at end of file
+[式形式のメンバー](../../programming-guide/statements-expressions-operators/expression-bodied-members.md)
\ No newline at end of file
diff --git a/docs/csharp/language-reference/operators/left-shift-assignment-operator.md b/docs/csharp/language-reference/operators/left-shift-assignment-operator.md
index 4ec126173fb..4d2d7bcb0b0 100644
--- a/docs/csharp/language-reference/operators/left-shift-assignment-operator.md
+++ b/docs/csharp/language-reference/operators/left-shift-assignment-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- <<= operator (left-shift assignment) [C#]
- left shift assignment operator (<<=) [C#]
ms.assetid: 3bc99c78-1edb-4827-86fc-bce6c3048871
-ms.openlocfilehash: 9e2dbf693f7bee16c2ce97ccc7d52a318b8a3906
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: e5f3886670baa34b0360501ee15280b93fac36bc
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# <<= 演算子 (C# リファレンス)
左シフト代入演算子。
@@ -19,13 +19,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次のような形式の式があります。
-```
+```csharp
x <<= y
```
これが次のように評価されます。
-```
+```csharp
x = x << y
```
diff --git a/docs/csharp/language-reference/operators/multiplication-assignment-operator.md b/docs/csharp/language-reference/operators/multiplication-assignment-operator.md
index 2291359ef49..ba28ef161a7 100644
--- a/docs/csharp/language-reference/operators/multiplication-assignment-operator.md
+++ b/docs/csharp/language-reference/operators/multiplication-assignment-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- '*= operator [C#]'
- binary multiplication assignment operator (*=) [C#]
ms.assetid: 2e472155-59db-4dbf-bb94-bcccfa1a794d
-ms.openlocfilehash: 465cf37d38a989d5c1bf6f0d0242c295e55684f8
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 6bbf2142ca7e9e05010a29920da52e1439f6e882
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# *= 演算子 (C# リファレンス)
二項乗算代入演算子です。
@@ -19,13 +19,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次のような `*=` 代入演算子を使用する式があるとします
-```
+```csharp
x *= y
```
上記の式は、次の式と同じです。
-```
+```csharp
x = x * y
```
diff --git a/docs/csharp/language-reference/operators/null-conditional-operators.md b/docs/csharp/language-reference/operators/null-conditional-operators.md
index 56cd1baa030..549631055d1 100644
--- a/docs/csharp/language-reference/operators/null-conditional-operators.md
+++ b/docs/csharp/language-reference/operators/null-conditional-operators.md
@@ -1,10 +1,6 @@
---
title: Null 条件演算子 (C# および Visual Basic)
ms.date: 04/03/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
dev_langs:
- csharp
- vb
@@ -16,17 +12,16 @@ helpviewer_keywords:
- ?[] operator [C#]
- ?[] operator [Visual Basic]
ms.assetid: 9c7b2c8f-a785-44ca-836c-407bfb6d27f5
-caps.latest.revision: 3
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 3ffeaa3c2088d0bb2c000704cfe312b0f9453b68
-ms.sourcegitcommit: b750a8e3979749b214e7e10c82efb0a0524dfcb1
+ms.openlocfilehash: da771fa4a2a89dca308508ea81ef8e0060efa7f0
+ms.sourcegitcommit: e5bb395ec86f536e114314184288f40a8c745e2e
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 04/09/2018
+ms.lasthandoff: 05/12/2018
---
# ?. および ?[] Null 条件演算子 (C# および Visual Basic)
-メンバー アクセス (`?.`) またはインデックス (`?[]`) 操作を実行する前に、null をテストするために使用されます。 これらの演算子を使用すると、null チェックの処理のために記述するコードを少なくすることができます (特に、データ構造を下っていく場合)。
+メンバー アクセス (`?.`) またはインデックス (`?[]`) 操作を実行する前に、左の演算子の値を null に対してテストします。左側のオペランドが `null` に評価される場合、`null` が返されます。
+
+これらの演算子を使用すると、null チェックの処理のために記述するコードを少なくすることができます (特に、データ構造を下っていく場合)。
```csharp
int? length = customers?.Length; // null if customers is null
@@ -69,16 +64,14 @@ If handler IsNot Nothing
新しい方法は格段に単純です。
```csharp
-PropertyChanged?.Invoke(e)
+PropertyChanged?.Invoke(…)
```
```vb
-PropertyChanged?.Invoke(e)
+PropertyChanged?.Invoke(…)
```
- コンパイラが `PropertyChanged` を評価するためのコードを一度しか生成せず、一時変数に結果が保持されるため、新しい方法はスレッド セーフです。
-
- null 条件デリゲート呼び出し構文 `PropertyChanged?(e)` がないため、`Invoke` メソッドを明示的に呼び出す必要があります。
+ コンパイラが `PropertyChanged` を評価するためのコードを一度しか生成せず、一時変数に結果が保持されるため、新しい方法はスレッド セーフです。 null 条件デリゲート呼び出し構文 `PropertyChanged?(e)` がないため、`Invoke` メソッドを明示的に呼び出す必要があります。
## 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
@@ -89,5 +82,4 @@ PropertyChanged?.Invoke(e)
[?? (Null 合体演算子)](null-conditional-operator.md)
[C# リファレンス](../../../csharp/language-reference/index.md)
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
- [Visual Basic の言語リファレンス](../../../visual-basic/language-reference/index.md)
[Visual Basic プログラミング ガイド](../../../visual-basic/programming-guide/index.md)
diff --git a/docs/csharp/language-reference/operators/or-assignment-operator.md b/docs/csharp/language-reference/operators/or-assignment-operator.md
index 8d988f43d9e..7fc47b5cda1 100644
--- a/docs/csharp/language-reference/operators/or-assignment-operator.md
+++ b/docs/csharp/language-reference/operators/or-assignment-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- OR assignment operator (|=) [C#]
- '|= operator (OR assignment) [C#]'
ms.assetid: 8315b8cf-dd15-402f-92f0-c7db931696ca
-ms.openlocfilehash: 2abfbcbabb4229049c97aa6827abef3a053d6992
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 18246d013275c8d6c8ad7e05409387457afc3442
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# |= 演算子 (C# リファレンス)
OR 代入演算子です。
@@ -19,13 +19,13 @@ OR 代入演算子です。
## コメント
次のような `|=` 代入演算子を使用する式があるとします
-```
+```csharp
x |= y
```
上記の式は、次の式と同じです。
-```
+```csharp
x = x | y
```
diff --git a/docs/csharp/language-reference/operators/right-shift-assignment-operator.md b/docs/csharp/language-reference/operators/right-shift-assignment-operator.md
index 5499d4dcec1..f6ba7437483 100644
--- a/docs/csharp/language-reference/operators/right-shift-assignment-operator.md
+++ b/docs/csharp/language-reference/operators/right-shift-assignment-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- right shift assignment operator (>>=) [C#]
- '>>= operator (right-shift assignment) [C#]'
ms.assetid: b593778c-b9b4-440d-8b29-c1ac22cb81c0
-ms.openlocfilehash: 41203f6e7c9929bb349d29c40cf7cc6c24550c36
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: ccc3f688d985b9e35404550f0c53a7acf8095dd5
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# >>= 演算子 (C# リファレンス)
右シフト代入演算子。
@@ -19,13 +19,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次のような形式の式があります。
-```
+```csharp
x >>= y
```
これが次のように評価されます。
-```
+```csharp
x = x >> y
```
diff --git a/docs/csharp/language-reference/operators/subtraction-assignment-operator.md b/docs/csharp/language-reference/operators/subtraction-assignment-operator.md
index 9d646a18c5c..f58021fd9d7 100644
--- a/docs/csharp/language-reference/operators/subtraction-assignment-operator.md
+++ b/docs/csharp/language-reference/operators/subtraction-assignment-operator.md
@@ -7,11 +7,11 @@ helpviewer_keywords:
- subtraction assignment operator (-=) [C#]
- -= operator (subtraction assignment ) [C#]
ms.assetid: 05c7d68a-423f-4de8-891b-cf24e8fb6ed7
-ms.openlocfilehash: 33aba2e944c8d0589949e7bdc77aadd4f213da28
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: 2f37bfa303fb523840b15e896ee3b4a967eb5b2b
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# -= 演算子 (C# リファレンス)
減算代入演算子です。
@@ -19,13 +19,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次のような `-=` 代入演算子を使用する式があるとします
-```
+```csharp
x -= y
```
上記の式は、次の式と同じです。
-```
+```csharp
x = x - y
```
diff --git a/docs/csharp/language-reference/operators/xor-assignment-operator.md b/docs/csharp/language-reference/operators/xor-assignment-operator.md
index 24514929ea4..23d96e63968 100644
--- a/docs/csharp/language-reference/operators/xor-assignment-operator.md
+++ b/docs/csharp/language-reference/operators/xor-assignment-operator.md
@@ -6,11 +6,11 @@ f1_keywords:
helpviewer_keywords:
- ^= operator [C#]
ms.assetid: 3658ff9a-61cd-467e-ad6b-8fbf1cfbaae4
-ms.openlocfilehash: 0315cab66729d8169527c4b0ba7e00ab3b5ad5da
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: b868f2cdbfa8a80f89a12e6194a30154481f0b07
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# ^= 演算子 (C# リファレンス)
排他的 OR 代入演算子。
@@ -18,13 +18,13 @@ ms.lasthandoff: 05/04/2018
## コメント
次のような形式の式があります。
-```
+```csharp
x ^= y
```
これが次のように評価されます。
-```
+```csharp
x = x ^ y
```
diff --git a/docs/csharp/language-reference/tokens/interpolated.md b/docs/csharp/language-reference/tokens/interpolated.md
index dc3f59fd228..6f825a7b816 100644
--- a/docs/csharp/language-reference/tokens/interpolated.md
+++ b/docs/csharp/language-reference/tokens/interpolated.md
@@ -2,10 +2,6 @@
title: $ - 文字列補間 (C# リファレンス)
description: 文字列補間では、従来の複合文字列の書式設定よりも読み取りやすく、便利な構文を書式指定文字列の出力に提供します。
ms.date: 03/26/2018
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- $_CSharpKeyword
- $
@@ -14,24 +10,25 @@ helpviewer_keywords:
- $ language element [C#]
- string interpolation [C#]
- interpolated string [C#]
-author: rpetrusha
+author: pkulikov
ms.author: ronpet
-ms.openlocfilehash: cabb40c9c449780c8c2a504aad3e53938e2ed957
-ms.sourcegitcommit: 2e8acae16ae802f2d6d04e3ce0a6dbf04e476513
+ms.openlocfilehash: 407ca9e4744ea9be45867a08e87c502821226472
+ms.sourcegitcommit: ff1d40507b3eb6e2185478e37c66c66be6de46f1
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 04/18/2018
+ms.lasthandoff: 05/11/2018
---
# $ - 文字列補間 (C# リファレンス)
-`$` 特殊文字は、リテラル文字列を*挿入文字列*として識別します。 挿入文字列は、*挿入式*が含まれているテンプレート文字列のように見えます。 挿入文字列が結果文字列に解決されると、挿入式を含む項目は、式の結果の文字列表現によって置き換えられます。 この機能は C# 6 以降のバージョンで使用できます。
+`$` 特殊文字は、リテラル文字列を*挿入文字列*として識別します。 挿入文字列は、*挿入式*が含まれている可能性がある文字列リテラルです。 挿入文字列が結果文字列に解決されると、挿入式を含む項目は、式の結果の文字列表現によって置き換えられます。 この機能は C# 6 以降のバージョンの言語で使用できます。
文字列補間では、[複合文字列の書式設定](../../../standard/base-types/composite-formatting.md)機能よりも読み取りやすく便利な構文を使用して書式指定された文字列を作成できます。 次の例では、両方の機能を使用して、同じ出力を生成します。
[!code-csharp-interactive[compare with composite formatting](../../../../samples/snippets/csharp/language-reference/tokens/string-interpolation.cs#1)]
-> [!NOTE]
-> `$` と文字列を開始する `"` の間に空白を入れることはできません。 空白を入れると、コンパイル時エラーが発生します。
+## 挿入文字列の構造
+
+文字列リテラルを挿入文字列として識別するため、先頭に `$` の記号を追加してください。 `$` と文字列リテラルを開始する `"` の間に空白を入れることはできません。 空白を入れると、コンパイル時エラーが発生します。
挿入式を含む項目の構造は、次のとおりです。
@@ -43,27 +40,31 @@ ms.lasthandoff: 04/18/2018
|要素|説明|
|-------------|-----------------|
-|`interpolatedExpression`|書式設定される結果を取得するために、評価される式です。 `null` 結果の文字列表現は、 です。|
+|`interpolatedExpression`|書式設定される結果を生成する式です。 `null` 結果の文字列表現は、 です。|
|`alignment`|挿入式の結果の文字列表現で、最小文字数を定義する値を持つ定数式です。 正の場合は、文字列表現は右揃えで配置され、負の場合は、左揃えで配置されます。 詳細については、「[Alignment コンポーネント](../../../standard/base-types/composite-formatting.md#alignment-component)」を参照してください。|
-|`formatString`|式の結果の型によってサポートされる、標準またはカスタムの書式指定文字列です。 詳細については、「[Format String コンポーネント](../../../standard/base-types/composite-formatting.md#format-string-component)」を参照してください。|
+|`formatString`|式の結果の型によってサポートされる書式指定文字列です。 詳細については、「[Format String コンポーネント](../../../standard/base-types/composite-formatting.md#format-string-component)」を参照してください。|
次の例では、前述したオプションの書式設定コンポーネントを使用します。
[!code-csharp-interactive[specify alignment and format string](../../../../samples/snippets/csharp/language-reference/tokens/string-interpolation.cs#2)]
+## 特殊文字
+
挿入文字列で生成された文字列にかっこ "{" または "}" を含めるには、2 つのかっこ "{{" または "}}" を使用します。 詳細については、「[エスケープ中かっこ ({})](../../../standard/base-types/composite-formatting.md#escaping-braces)」を参照してください。
-コロン (:) が挿入式の項目で特別な意味を持つときに、挿入式で[条件演算子](../operators/conditional-operator.md)を使用するには、その式をかっこで囲みます。
+コロン (":") が挿入式の項目で特別な意味を持つときに、挿入式で[条件演算子](../operators/conditional-operator.md)を使用するには、その式を丸かっこで囲みます。
次の例では、かっこを結果文字列に含める方法、および挿入式で条件演算子を使用する方法を示します。
[!code-csharp-interactive[example with ternary conditional operator](../../../../samples/snippets/csharp/language-reference/tokens/string-interpolation.cs#3)]
-逐語的挿入文字列では、後に `@` 文字が続く `$` 文字を使用します。 逐語的文字列の詳細については、[string](../keywords/string.md) に関するトピックを参照してください。
+verbatim 挿入文字列は、`@` 文字が続く `$` 文字で始まります。 逐語的文字列の詳細については、[string](../keywords/string.md) と [verbatim 識別子](verbatim.md)に関するトピックを参照してください。
> [!NOTE]
> `$` トークンは、逐語的挿入文字列の `@` トークンの前に置く必要があります。
+## 暗黙的な変換と `IFormatProvider` 実装の指定
+
挿入文字列から暗黙の変換を行う方法は 3 種類あります。
1. 挿入文字列から インスタンスへの変換。これは、適切に書式設定された文字列表現の結果で置き換えられる、挿入式の項目を含む挿入文字列分析の結果です。 この変換では、現在のカルチャを使用します。
@@ -74,20 +75,24 @@ ms.lasthandoff: 04/18/2018
- の結果文字列を生成する メソッド。
- 特定のカルチャの結果文字列を生成する メソッド。
+ メソッドを使用して、カスタム書式設定をサポートする インターフェイスのユーザー定義の実装を提供することもできます。 詳細については、「[ICustomFormatter を使用したカスタム書式設定](../../../standard/base-types/formatting-types.md#custom-formatting-with-icustomformatter)」を参照してください。
+
1. 挿入文字列から インスタンスへの変換。これは、単一の インスタンスから、カルチャ固有のコンテンツを持つ複数の結果文字列の作成も可能にするものです。
次の例では、カルチャ固有の結果の文字列を作成するために、 への暗黙の変換を使用します。
[!code-csharp-interactive[create culture-specific result strings](../../../../samples/snippets/csharp/language-reference/tokens/string-interpolation.cs#4)]
-文字列補間を初めてお使いの場合は、[C# の文字列補完](../../quick-starts/interpolated-strings.yml)に関するクイックスタートを参照してください。 詳細については、「[文字列補間](../../tutorials/string-interpolation.md)」のチュートリアルを参照してください。
+## その他の技術情報
+
+文字列補間を初めてお使いの場合は、[C# の文字列補完](../../quick-starts/interpolated-strings.yml)に関するクイックスタートを参照してください。 その他の例については、「[C# における文字列補間](../../tutorials/string-interpolation.md)」チュートリアルを参照してください。
## 関連項目
[複合書式指定](../../../standard/base-types/composite-formatting.md)
- [文字列](../../../csharp/programming-guide/strings/index.md)
- [C# 特殊文字](../../../csharp/language-reference/tokens/index.md)
- [C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
- [C# リファレンス](../../../csharp/language-reference/index.md)
\ No newline at end of file
+ [文字列](../../programming-guide/strings/index.md)
+ [C# プログラミング ガイド](../../programming-guide/index.md)
+ [C# 特殊文字](index.md)
+ [C# リファレンス](../index.md)
\ No newline at end of file
diff --git a/docs/csharp/language-reference/tokens/verbatim.md b/docs/csharp/language-reference/tokens/verbatim.md
index 2715770d344..03431ebee2c 100644
--- a/docs/csharp/language-reference/tokens/verbatim.md
+++ b/docs/csharp/language-reference/tokens/verbatim.md
@@ -1,10 +1,6 @@
---
-title: "@ (C# リファレンス)"
+title: '@ (C# リファレンス)'
ms.date: 02/09/2017
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
f1_keywords:
- '@_CSharpKeyword'
- '@'
@@ -14,11 +10,11 @@ helpviewer_keywords:
ms.assetid: 89bc7e53-85f5-478a-866d-1cca003c4e8c
author: rpetrusha
ms.author: ronpet
-ms.openlocfilehash: 2b62231afc3014f9fc2b9ac7bd39168f40e12c8d
-ms.sourcegitcommit: 83dd5ec003e788ccb3e33f3412a7af39ae347646
+ms.openlocfilehash: bdf8735894594acab31586e539f90e426db97f24
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 03/15/2018
+ms.lasthandoff: 05/04/2018
---
# @ (C# リファレンス)
@@ -28,7 +24,7 @@ ms.lasthandoff: 03/15/2018
[!code-csharp[verbatim1](../../../../samples/snippets/csharp/language-reference/keywords/verbatim1.cs#1)]
-1. 文字列リテラルを逐語的に解釈することを示す。 このインスタンス内の `@` 文字は、*verbatim 文字列リテラル*を定義します。 単純なエスケープ シーケンス (バック スラッシュの `"\\"` など)、16 進数のエスケープ シーケンス (大文字 A の `"\x0041"` など)、および Unicode のエスケープ シーケンス (大文字 A の `"\u0041"` など) は、リテラルに解釈されます。 引用符のエスケープ シーケンス (`""`) だけは、リテラルに解釈することはできません。一重引用符が生成されます。 次の例では、2 つの同じファイル パスを定義しています。一方は通常の文字列リテラルを使用して、もう一方は verbatim 文字列リテラルを使用して定義しています。 これは、verbatim 文字列リテラルの一般的な用途の 1 つです。
+1. 文字列リテラルを逐語的に解釈することを示す。 このインスタンス内の `@` 文字は、*verbatim 文字列リテラル*を定義します。 単純なエスケープ シーケンス (バック スラッシュの `"\\"` など)、16 進数のエスケープ シーケンス (大文字 A の `"\x0041"` など)、Unicode のエスケープ シーケンス (大文字 A の `"\u0041"` など) は、リテラルに解釈されます。 引用符のエスケープ シーケンス (`""`) だけは、リテラルに解釈することはできません。一重引用符が生成されます。 また、逐語的な[補間文字列](interpolated.md)の場合、中かっこエスケープ シーケンス (`{{` と `}}`) は文字どおり解釈されません。単一の中かっこ文字が生成されます。 次の例では、2 つの同じファイル パスを定義しています。一方は通常の文字列リテラルを使用して、もう一方は verbatim 文字列リテラルを使用して定義しています。 これは、verbatim 文字列リテラルの一般的な用途の 1 つです。
[!code-csharp[verbatim2](../../../../samples/snippets/csharp/language-reference/keywords/verbatim1.cs#2)]
diff --git a/docs/csharp/linq/group-query-results.md b/docs/csharp/linq/group-query-results.md
index b112d661ff7..2dce8f88392 100644
--- a/docs/csharp/linq/group-query-results.md
+++ b/docs/csharp/linq/group-query-results.md
@@ -1,20 +1,13 @@
---
-title: "クエリ結果のグループ化"
-description: "結果をグループ化する方法です。"
-keywords: .NET, .NET Core, C#
-author: BillWagner
-manager: wpickett
-ms.author: wiwagn
+title: クエリ結果のグループ化
+description: 結果をグループ化する方法です。
ms.date: 12/1/2016
-ms.topic: article
-ms.prod: .net
-ms.technology: devlang-csharp
ms.assetid: 2e4ec27f-06fb-4de7-8973-0189906d4520
-ms.openlocfilehash: ca68cf96a2c27bbd1999d5445c14fc93e8e2566c
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: cb7808bfdd86dd23882d0722b87b1e013a84141e
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# クエリ結果のグループ化
@@ -80,6 +73,6 @@ ms.lasthandoff: 11/21/2017
[LINQ クエリ式](index.md)
[group 句](../language-reference/keywords/group-clause.md)
[匿名型](../programming-guide/classes-and-structs/anonymous-types.md)
- [グループ化操作でサブクエリを実行します。](perform-a-subquery-on-a-grouping-operation.md)
- [入れ子になったグループを作成します。](create-a-nested-group.md)
+ [グループ化操作でのサブクエリの実行](perform-a-subquery-on-a-grouping-operation.md)
+ [入れ子になったグループの作成](create-a-nested-group.md)
[データのグループ化](../programming-guide/concepts/linq/grouping-data.md)
diff --git a/docs/csharp/programming-guide/classes-and-structs/extension-methods.md b/docs/csharp/programming-guide/classes-and-structs/extension-methods.md
index 4f13728b084..70198a50938 100644
--- a/docs/csharp/programming-guide/classes-and-structs/extension-methods.md
+++ b/docs/csharp/programming-guide/classes-and-structs/extension-methods.md
@@ -6,11 +6,11 @@ helpviewer_keywords:
- extension methods [C#]
- methods [C#], extension
ms.assetid: 175ce3ff-9bbf-4e64-8421-faeb81a0bb51
-ms.openlocfilehash: bf25ddda2c7e381f0b43798b28179b18338d71cb
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: e2e63953e130dc83ce83bcdd2f8e9a2ffc7fe5f3
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# 拡張メソッド (C# プログラミング ガイド)
拡張メソッドを使用すると、新規の派生型の作成、再コンパイル、または元の型の変更を行うことなく既存の型にメソッドを "追加" できます。 拡張メソッドは特別な種類の静的メソッドですが、拡張された型のインスタンス メソッドのように呼び出します。 C#、F#、および Visual Basic で作成されたクライアント コードの場合は、拡張メソッドの呼び出しと、型で実際に定義されたメソッドの呼び出しに明確な違いはありません。
@@ -29,13 +29,13 @@ ms.lasthandoff: 05/04/2018
この `WordCount` ディレクティブを使用することで、`using` 拡張メソッドをスコープに取り込むことができます。
-```
+```csharp
using ExtensionMethods;
```
また、この構文を使用することで、アプリケーションから呼び出すことができます。
-```
+```csharp
string s = "Hello Extension Methods";
int i = s.WordCount();
```
@@ -46,7 +46,7 @@ int i = s.WordCount();
一般的には、独自の拡張メソッドを実装するよりも、拡張メソッドを呼び出すことの方がはるかに多くなります。 拡張メソッドは、インスタンス メソッドの構文を使用して呼び出すので、特別な知識がなくてもクライアント コードからそれらを使用できます。 メソッドが定義されている名前空間に関する `using` ディレクティブを追加するだけで、特定の型の拡張メソッドを使用できるようになります。 たとえば、標準クエリ演算子を使用するには、次の `using` ディレクティブをコードに追加します。
-```
+```csharp
using System.Linq;
```
diff --git a/docs/csharp/programming-guide/classes-and-structs/fields.md b/docs/csharp/programming-guide/classes-and-structs/fields.md
index cc7111092aa..663ace4e817 100644
--- a/docs/csharp/programming-guide/classes-and-structs/fields.md
+++ b/docs/csharp/programming-guide/classes-and-structs/fields.md
@@ -1,21 +1,14 @@
---
-title: "フィールド (C# プログラミング ガイド)"
+title: フィールド (C# プログラミング ガイド)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
helpviewer_keywords:
- fields [C#]
ms.assetid: 3cbb2f61-75f8-4cce-b4ef-f5d1b3de0db7
-caps.latest.revision:
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: acf4ade68235a196fd6d2f3c6c71279748f3dd71
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 31073772fd42244167b5e68959ebb373ec759025
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# フィールド (C# プログラミング ガイド)
*フィールド*とは、[クラス](../../../csharp/language-reference/keywords/class.md)または[構造体](../../../csharp/language-reference/keywords/struct.md)で直接宣言される任意の型の変数です。 フィールドは、それを含んでいる型の*メンバー*です。
@@ -43,7 +36,7 @@ ms.lasthandoff: 11/21/2017
> [!NOTE]
> フィールドの初期化子は、他のインスタンス フィールドを参照できません。
- フィールドとしてマークできる[パブリック](../../../csharp/language-reference/keywords/public.md)、[プライベート](../../../csharp/language-reference/keywords/private.md)、[保護](../../../csharp/language-reference/keywords/protected.md)、[内部](../../../csharp/language-reference/keywords/internal.md)、[内部保護](../../../csharp/language-reference/keywords/protected-internal.md)または[保護されたプライベート](../../../csharp/language-reference/keywords/private-protected.md)です。 これらのアクセス修飾子により、クラスのユーザーがフィールドにアクセスする方法が定義されます。 詳細については、「[アクセス修飾子](../../../csharp/programming-guide/classes-and-structs/access-modifiers.md)」を参照してください。
+ フィールドは、[public](../../../csharp/language-reference/keywords/public.md)、[private](../../../csharp/language-reference/keywords/private.md)、[protected](../../../csharp/language-reference/keywords/protected.md)、[internal](../../../csharp/language-reference/keywords/internal.md)、[protected internal](../../../csharp/language-reference/keywords/protected-internal.md) または [private protected](../../../csharp/language-reference/keywords/private-protected.md) としてマークできます。 これらのアクセス修飾子により、クラスのユーザーがフィールドにアクセスする方法が定義されます。 詳細については、「[アクセス修飾子](../../../csharp/programming-guide/classes-and-structs/access-modifiers.md)」を参照してください。
必要に応じて、フィールドを[静的](../../../csharp/language-reference/keywords/static.md)に宣言することもできます。 その場合、クラスのインスタンスが存在しなくても、呼び出し元がいつでもフィールドを使用できるようになります。 詳細については、「[静的クラスと静的クラス メンバー](../../../csharp/programming-guide/classes-and-structs/static-classes-and-static-class-members.md)」を参照してください。
@@ -52,7 +45,7 @@ ms.lasthandoff: 11/21/2017
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[クラスと構造体](../../../csharp/programming-guide/classes-and-structs/index.md)
[コンストラクターの使用](../../../csharp/programming-guide/classes-and-structs/using-constructors.md)
diff --git a/docs/csharp/programming-guide/classes-and-structs/how-to-declare-and-use-read-write-properties.md b/docs/csharp/programming-guide/classes-and-structs/how-to-declare-and-use-read-write-properties.md
index 1cbb1fd2f2e..9d38b639d19 100644
--- a/docs/csharp/programming-guide/classes-and-structs/how-to-declare-and-use-read-write-properties.md
+++ b/docs/csharp/programming-guide/classes-and-structs/how-to-declare-and-use-read-write-properties.md
@@ -8,11 +8,11 @@ helpviewer_keywords:
- read/write properties [C#]
- accessors [C#], declaring properties with
ms.assetid: a4962fef-af7e-4c4b-a929-4ae4d646ab8a
-ms.openlocfilehash: 1930d6c50c176ae1765bdb41af2c7484fb908328
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: d6a7083e1c0cf0dc5c076a69dee15fc39e234d53
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# 方法: 読み取り/書き込みのプロパティの宣言と使用 (C# プログラミング ガイド)
プロパティは、オブジェクトのデータへの保護されていない、制御されず未確認のアクセスに伴うリスクなしにパブリック データ メンバーの利便性を提供します。 これは*アクセサー*を通じて行われます。アクセサーは、基になるデータ メンバーの値を割り当てたり、取得したりする特殊なメソッドです。 [set](../../../csharp/language-reference/keywords/set.md) アクセサーはデータ メンバーの割り当てを可能にし、[get](../../../csharp/language-reference/keywords/get.md) アクセサーはデータ メンバーの値を取得します。
@@ -43,7 +43,7 @@ ms.lasthandoff: 05/04/2018
`set` メソッドと `get` メソッドがそれぞれ使用されてプロパティがモデル化されている場合、上記と同じ内容のコードは次のようになります。
-```
+```csharp
person.SetAge(person.GetAge() + 1);
```
diff --git a/docs/csharp/programming-guide/classes-and-structs/how-to-define-abstract-properties.md b/docs/csharp/programming-guide/classes-and-structs/how-to-define-abstract-properties.md
index 33c55e5a80e..e2587ab620f 100644
--- a/docs/csharp/programming-guide/classes-and-structs/how-to-define-abstract-properties.md
+++ b/docs/csharp/programming-guide/classes-and-structs/how-to-define-abstract-properties.md
@@ -5,11 +5,11 @@ helpviewer_keywords:
- properties [C#], abstract
- abstract properties [C#]
ms.assetid: 672a90eb-47b9-4ae0-9914-af53852fddcb
-ms.openlocfilehash: cf4295eea6a257fe053bf889f0c2f3d3fa5bb2a6
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: aa9006b6864b9b6b129eed323b0d6d7b29064189
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# 方法 : 抽象プロパティを定義する (C# プログラミング ガイド)
次の例では、[抽象](../../../csharp/language-reference/keywords/abstract.md)プロパティを定義する方法を示します。 抽象プロパティの宣言では、プロパティ アクセサーは実装されません。クラスがプロパティをサポートしていることは宣言しますが、アクセサーの実装は派生クラスに委ねます。 基本クラスから継承された抽象プロパティを実装する方法を次の例に示します。
@@ -35,7 +35,7 @@ ms.lasthandoff: 05/04/2018
- プロパティの修飾子は、プロパティ宣言自体に設定されます。 例:
- ```
+ ```csharp
public abstract double Area
```
diff --git a/docs/csharp/programming-guide/classes-and-structs/implicitly-typed-local-variables.md b/docs/csharp/programming-guide/classes-and-structs/implicitly-typed-local-variables.md
index 7f7e5e649d1..637dd1bebbc 100644
--- a/docs/csharp/programming-guide/classes-and-structs/implicitly-typed-local-variables.md
+++ b/docs/csharp/programming-guide/classes-and-structs/implicitly-typed-local-variables.md
@@ -5,11 +5,11 @@ helpviewer_keywords:
- implicitly-typed local variables [C#]
- var [C#]
ms.assetid: b9218fb2-ef5d-4814-8a8e-2bc29b0bbc9b
-ms.openlocfilehash: a3cb2490247a6e9fdb51b73d405173d29263393c
-ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
+ms.openlocfilehash: c6c2bae39764e78fad2510bbc8937b0ac790bef5
+ms.sourcegitcommit: 89c93d05c2281b4c834f48f6c8df1047e1410980
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 05/04/2018
+ms.lasthandoff: 05/15/2018
---
# 暗黙的に型指定されるローカル変数 (C# プログラミング ガイド)
ローカル変数は、明示的な型を指定しないで宣言できます。 `var` キーワードは、初期化ステートメントの右辺にある式から変数の型を推論するようにコンパイラに指示します。 推論される型は、組み込み型、匿名型、ユーザー定義型、または .NET Framework クラス ライブラリで定義されている型である可能性があります。 `var` で配列を初期化する方法の詳細については、「[暗黙的に型指定される配列](../../../csharp/programming-guide/arrays/implicitly-typed-arrays.md)」を参照してください。
@@ -26,19 +26,19 @@ ms.lasthandoff: 05/04/2018
- [for](../../../csharp/language-reference/keywords/for.md) 初期化ステートメント。
- ```
+ ```csharp
for(var x = 1; x < 10; x++)
```
- [foreach](../../../csharp/language-reference/keywords/foreach-in.md) 初期化ステートメント。
- ```
+ ```csharp
foreach(var item in list){...}
```
- [using](../../../csharp/language-reference/keywords/using-statement.md) ステートメント。
- ```
+ ```csharp
using (var file = new StreamReader("C:\\myfile.txt")) {...}
```
diff --git a/docs/csharp/programming-guide/classes-and-structs/nested-types.md b/docs/csharp/programming-guide/classes-and-structs/nested-types.md
index 9e0535d6ac5..fc92b844258 100644
--- a/docs/csharp/programming-guide/classes-and-structs/nested-types.md
+++ b/docs/csharp/programming-guide/classes-and-structs/nested-types.md
@@ -1,21 +1,14 @@
---
-title: "入れ子にされた型 (C# プログラミング ガイド)"
+title: 入れ子にされた型 (C# プログラミング ガイド)
ms.date: 07/10/2017
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
helpviewer_keywords:
- nested types [C#]
ms.assetid: f2e1b315-e3d1-48ce-977f-7bae0960ba99
-caps.latest.revision:
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: ab13c68b638062ab89c90dbfc51b51b8d72d3bde
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 57356fbf4bff218932d1f1b4c62532f10c175757
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# 入れ子にされた型 (C# プログラミング ガイド)
[クラス](../../../csharp/language-reference/keywords/class.md)や[構造体](../../../csharp/language-reference/keywords/struct.md)の中で定義された型は、入れ子にされた型と呼ばれます。 例:
@@ -26,9 +19,9 @@ ms.lasthandoff: 11/21/2017
次のように、[アクセス修飾子](../../language-reference/keywords/access-modifiers.md)を指定して、入れ子にされた型のアクセシビリティを定義することもできます。
-- 入れ子にされた型の**クラス**できます[パブリック](../../../csharp/language-reference/keywords/public.md)、[保護](../../../csharp/language-reference/keywords/protected.md)、[内部](../../../csharp/language-reference/keywords/internal.md)、[内部保護](../../../csharp/language-reference/keywords/protected-internal.md)、[プライベート](../../../csharp/language-reference/keywords/private.md)または[保護されたプライベート](../../../csharp/language-reference/keywords/private-protected.md)です。
+- **クラス**の入れ子にされた型は、[public](../../../csharp/language-reference/keywords/public.md)、[protected](../../../csharp/language-reference/keywords/protected.md)、[internal](../../../csharp/language-reference/keywords/internal.md)、[protected internal](../../../csharp/language-reference/keywords/protected-internal.md)、[private](../../../csharp/language-reference/keywords/private.md)、[private protected](../../../csharp/language-reference/keywords/private-protected.md) になります。
- ただし、定義、 `protected`、`protected internal`または`private protected`内のクラスを入れ子になった、[クラスをシール](../../language-reference/keywords/sealed.md)コンパイラの警告が生成されます[CS0628](../../misc/cs0628.md)、「新規のプロテクト メンバーはシール クラスで宣言されています」。
+ ただし、[シール クラス](../../language-reference/keywords/sealed.md)内で `protected`、`protected internal`、`private protected` の入れ子にされたクラスを定義すると、コンパイラの警告 [CS0628](../../misc/cs0628.md)、"新規のプロテクト メンバーがシール クラスで宣言されました" が生成されます。
- **構造体**の入れ子にされた型は、は、[public](../../../csharp/language-reference/keywords/public.md)、[internal](../../../csharp/language-reference/keywords/internal.md)、または [private](../../../csharp/language-reference/keywords/private.md) のいずれかが可能です。
@@ -46,7 +39,7 @@ ms.lasthandoff: 11/21/2017
[!code-csharp[csProgGuideObjects#71](../../../csharp/programming-guide/classes-and-structs/codesnippet/CSharp/nested-types_4.cs)]
-## 関連項目
+## 参照
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[クラスと構造体](../../../csharp/programming-guide/classes-and-structs/index.md)
[アクセス修飾子](../../../csharp/programming-guide/classes-and-structs/access-modifiers.md)
diff --git a/docs/csharp/programming-guide/classes-and-structs/using-constructors.md b/docs/csharp/programming-guide/classes-and-structs/using-constructors.md
index e61d14ba111..ebe98a76f12 100644
--- a/docs/csharp/programming-guide/classes-and-structs/using-constructors.md
+++ b/docs/csharp/programming-guide/classes-and-structs/using-constructors.md
@@ -1,21 +1,14 @@
---
-title: "コンストラクターの使用 (C# プログラミング ガイド)"
+title: コンストラクターの使用 (C# プログラミング ガイド)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
helpviewer_keywords:
- constructors [C#], about constructors
ms.assetid: 464253b2-fd5d-469a-836d-df0fdf2a43f7
-caps.latest.revision:
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: eb9fcd1e4090da300de17c7fd808669ba51767c6
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 80400cc1eae697c931833a5444969a231e23c06e
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# コンストラクターの使用 (C# プログラミング ガイド)
[クラス](../../../csharp/language-reference/keywords/class.md)または[構造体](../../../csharp/language-reference/keywords/struct.md)を作成する際には、コンストラクターが呼び出されます。 コンストラクターの名前はクラスまたは構造体と同じで、通常は、このコンストラクターによって、新しいオブジェクトのデータ メンバーが初期化されます。
@@ -89,14 +82,14 @@ Console.WriteLine("{0}, {1}", a, b);
[!code-csharp[csProgGuideObjects#60](../../../csharp/programming-guide/classes-and-structs/codesnippet/CSharp/using-constructors_9.cs)]
- コンス トラクターとしてマークできる[パブリック](../../../csharp/language-reference/keywords/public.md)、[プライベート](../../../csharp/language-reference/keywords/private.md)、[保護](../../../csharp/language-reference/keywords/protected.md)、[内部](../../../csharp/language-reference/keywords/internal.md)、[内部保護されている](../../../csharp/language-reference/keywords/protected-internal.md)または[保護されたプライベート](../../../csharp/language-reference/keywords/private-protected.md)です。 こうしたアクセス修飾子により、クラスのユーザーによるクラスの作成方法が定義されます。 詳細については、「[アクセス修飾子](../../../csharp/programming-guide/classes-and-structs/access-modifiers.md)」を参照してください。
+ コンストラクターは、[public](../../../csharp/language-reference/keywords/public.md)、[private](../../../csharp/language-reference/keywords/private.md)、[protected](../../../csharp/language-reference/keywords/protected.md)、[internal](../../../csharp/language-reference/keywords/internal.md)、[protected internal](../../../csharp/language-reference/keywords/protected-internal.md) または [private protected](../../../csharp/language-reference/keywords/private-protected.md) としてマークできます。 こうしたアクセス修飾子により、クラスのユーザーによるクラスの作成方法が定義されます。 詳細については、「[アクセス修飾子](../../../csharp/programming-guide/classes-and-structs/access-modifiers.md)」を参照してください。
コンストラクターは、[static](../../../csharp/language-reference/keywords/static.md) キーワードを使用して静的として宣言できます。 静的コンストラクターは、静的フィールドがアクセスされる直前に自動的に呼び出され、通常は静的なクラス メンバーを初期化するために使用されます。 詳細については、「[静的コンストラクター](../../../csharp/programming-guide/classes-and-structs/static-constructors.md)」を参照してください。
## C# 言語仕様
[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]
-## 関連項目
+## 参照
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[クラスと構造体](../../../csharp/programming-guide/classes-and-structs/index.md)
[コンストラクター](../../../csharp/programming-guide/classes-and-structs/constructors.md)
diff --git a/docs/csharp/programming-guide/classes-and-structs/using-structs.md b/docs/csharp/programming-guide/classes-and-structs/using-structs.md
index bbb556dbc4f..4ed83811e68 100644
--- a/docs/csharp/programming-guide/classes-and-structs/using-structs.md
+++ b/docs/csharp/programming-guide/classes-and-structs/using-structs.md
@@ -1,34 +1,27 @@
---
-title: "構造体の使用 (C# プログラミング ガイド)"
+title: 構造体の使用 (C# プログラミング ガイド)
ms.date: 07/20/2015
-ms.prod: .net
-ms.technology:
-- devlang-csharp
-ms.topic: article
helpviewer_keywords:
- structs [C#], using
ms.assetid: cea4a459-9eb9-442b-8d08-490e0797ba38
-caps.latest.revision:
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 94181c42ce913dc76c9a074e4bcbb8240764c896
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 553a6d1d2e922d1683cb5dbe2fa0b525c9b1e37a
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# 構造体の使用 (C# プログラミング ガイド)
`struct` 型は、 `Point`、 `Rectangle`、 `Color`などの軽量のオブジェクトを表すのに適しています。 点を表すには [自動実装プロパティ](../../../csharp/language-reference/keywords/class.md) がある [クラス](../../../csharp/programming-guide/classes-and-structs/auto-implemented-properties.md)を使用するのと同じくらい便利ですが、シナリオによっては [構造体](../../../csharp/language-reference/keywords/struct.md) を使用する方がより効率的です。 たとえば、1,000 個の `Point` オブジェクトから成る配列を宣言する場合は、各オブジェクトの参照用に追加のメモリを割り当てます。この場合、構造体であれば処理上の負荷を抑えることができます。 [!INCLUDE[dnprdnshort](~/includes/dnprdnshort-md.md)] には という名前のオブジェクトが含まれているため、この例の構造体には代わりに "CoOrds" という名前が付けられています。
[!code-csharp[csProgGuideObjects#1](../../../csharp/programming-guide/classes-and-structs/codesnippet/CSharp/using-structs_1.cs)]
- 構造体に既定の (パラメーターなしの) コンストラクターを定義するとエラーになります。 また、構造体の本体のインスタンス フィールドを初期化した場合もエラーになります。 外部からアクセスできる構造体のメンバーを初期化するには、パラメーター化されたコンス トラクターが暗黙的な既定のコンス トラクターを使用してのみ、[オブジェクトの初期化子](../../../csharp/programming-guide/classes-and-structs/object-and-collection-initializers.md)、または構造体が宣言された後にメンバーを個別にアクセスすることによってです。 プライベートまたはアクセスできないメンバーはコンス トラクターの使用のみが必要です。
+ 構造体に既定の (パラメーターなしの) コンストラクターを定義するとエラーになります。 また、構造体の本体のインスタンス フィールドを初期化した場合もエラーになります。 外部アクセス可能な構造体メンバーを初期化するには、パラメーター化されたコンストラクター、暗黙的な既定のコンストラクター、[オブジェクト初期化子](../../../csharp/programming-guide/classes-and-structs/object-and-collection-initializers.md)を使用するか、構造体を宣言した後で個別にメンバーにアクセスする必要があります。 プライベートかそれ以外の理由でアクセスできないメンバーの場合、コンストラクターを独占的に使用する必要があります。
- 使用して struct オブジェクトを作成する場合、[新しい](../../../csharp/language-reference/keywords/new.md)演算子を作成およびに従って適切なコンス トラクターが呼び出されます、[コンス トラクターのシグネチャ](../../../csharp/programming-guide/classes-and-structs/constructors.md#constructor-syntax)です。 クラスとは異なり、構造体は `new` 演算子を使用せずにインスタンス化できます。 このような場合、コンストラクターの呼び出しが行われないため、割り当てがより効率的になります。 ただし、各フィールドは未割り当てのままになり、すべてのフィールドが初期化されるまではオブジェクトを使用できません。 これには、取得または自動実装プロパティを使用して値を設定することができないが含まれます。
+ [new](../../../csharp/language-reference/keywords/new.md) 演算子を使用して struct オブジェクトを作成すると、[コンストラクター シグネチャ](../../../csharp/programming-guide/classes-and-structs/constructors.md#constructor-syntax)に基づき、オブジェクトが作成されて適切なコンストラクターが呼び出されます。 クラスとは異なり、構造体は `new` 演算子を使用せずにインスタンス化できます。 このような場合、コンストラクターの呼び出しが行われないため、割り当てがより効率的になります。 ただし、各フィールドは未割り当てのままになり、すべてのフィールドが初期化されるまではオブジェクトを使用できません。 たとえば、自動的に実装されたプロパティから値を取得したり、設定したりできません。
- よると、すべてのメンバーが割り当てられた、既定のパラメーターなしコンス トラクターを使用して、構造体オブジェクトをインスタンス化する場合、[既定値](../../../csharp/programming-guide/statements-expressions-operators/default-value-expressions.md)です。
+ 既定の、パラメーターのないコンストラクターを利用して構造体オブジェクトを初期化する場合、その[既定値](../../../csharp/programming-guide/statements-expressions-operators/default-value-expressions.md)に基づいてすべてのメンバーが割り当てられます。
- 構造体のパラメーターを持つコンス トラクターを記述する場合は、すべてのメンバーを明示的に初期化する必要があります。それ以外の場合 1 つまたは複数のメンバーは未割り当てのままし、コンパイラ エラー CS0171 が生成した、構造体を使用することはできません。
+ 構造体のパラメーターを使用してコンストラクターを記述するとき、すべてのメンバーを明示的に初期化する必要があります。それをしない場合、1 つまたは複数のメンバーが未割り当てのままとなり、構造体を使用できず、コンパイラ エラー CS0171 が出ます。
クラスには継承がありますが、構造体には継承がありません。 構造体は、他の構造体やクラスから継承できず、基本クラスになることはできません。 ただし、構造体は、基本クラス から継承します。 構造体は、クラスの場合とまったく同じ方法でインターフェイスを実装できます。
@@ -56,7 +49,7 @@ ms.lasthandoff: 11/21/2017
[!code-csharp[csProgGuideObjects#3](../../../csharp/programming-guide/classes-and-structs/codesnippet/CSharp/using-structs_3.cs)]
-## 関連項目
+## 参照
[C# プログラミング ガイド](../../../csharp/programming-guide/index.md)
[クラスと構造体](../../../csharp/programming-guide/classes-and-structs/index.md)
[構造体](../../../csharp/programming-guide/classes-and-structs/structs.md)
diff --git a/docs/csharp/programming-guide/concepts/assemblies-gac/friend-assemblies.md b/docs/csharp/programming-guide/concepts/assemblies-gac/friend-assemblies.md
index c3d3a020ded..4b3acb88cd3 100644
--- a/docs/csharp/programming-guide/concepts/assemblies-gac/friend-assemblies.md
+++ b/docs/csharp/programming-guide/concepts/assemblies-gac/friend-assemblies.md
@@ -1,21 +1,12 @@
---
-title: "フレンド アセンブリ (C#)"
-ms.custom:
+title: フレンド アセンブリ (C#)
ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
ms.assetid: b65ea7de-0801-477a-a39c-e914c2cc107c
-caps.latest.revision: "3"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 20b8d4f2d58af510a28160d28e6ef740d293d835
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: c9265a6ce53d97f1d0b8aaeb0f1aae3b7b75f2cf
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# フレンド アセンブリ (C#)
"*フレンド アセンブリ*" とは、別のアセンブリに [internal](../../../../csharp/language-reference/keywords/internal.md) として宣言されている型やメンバーにアクセスできるアセンブリです。 フレンド アセンブリとして指定した場合、public として宣言されていないその型とメンバーに、他のアセンブリからアクセスできるようになります。 この方法は、特に次の状況で利便性を発揮します。
@@ -78,10 +69,10 @@ public class ClassWithFriendMethod
アセンブリの `internal` な型とメソッドにモジュール ファイル (.netmodule 拡張子の付いたファイル) からアクセスする方法については、「[/moduleassemblyname (C#)](../../../../csharp/language-reference/compiler-options/moduleassemblyname-compiler-option.md)」を参照してください。
-## 関連項目
+## 参照
- [方法: 署名のないフレンド アセンブリ (c#) を作成します。](../../../../csharp/programming-guide/concepts/assemblies-gac/how-to-create-unsigned-friend-assemblies.md)
- [方法: 署名されたフレンド アセンブリ (c#) を作成します。](../../../../csharp/programming-guide/concepts/assemblies-gac/how-to-create-signed-friend-assemblies.md)
+ [方法: 署名のないフレンド アセンブリを作成する (C#)](../../../../csharp/programming-guide/concepts/assemblies-gac/how-to-create-unsigned-friend-assemblies.md)
+ [方法: 署名されたフレンド アセンブリを作成する (C#)](../../../../csharp/programming-guide/concepts/assemblies-gac/how-to-create-signed-friend-assemblies.md)
[アセンブリとグローバル アセンブリ キャッシュ (C#)](../../../../csharp/programming-guide/concepts/assemblies-gac/index.md)
[C# プログラミング ガイド](../../../../csharp/programming-guide/index.md)
diff --git a/docs/csharp/programming-guide/concepts/assemblies-gac/how-to-create-unsigned-friend-assemblies.md b/docs/csharp/programming-guide/concepts/assemblies-gac/how-to-create-unsigned-friend-assemblies.md
index d2dc19e4b10..c97ad4d9ae1 100644
--- a/docs/csharp/programming-guide/concepts/assemblies-gac/how-to-create-unsigned-friend-assemblies.md
+++ b/docs/csharp/programming-guide/concepts/assemblies-gac/how-to-create-unsigned-friend-assemblies.md
@@ -1,21 +1,12 @@
---
-title: "方法: 署名のないフレンド アセンブリを作成する (C#)"
-ms.custom:
+title: '方法: 署名のないフレンド アセンブリを作成する (C#)'
ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
ms.assetid: 78cbc4f0-b021-4141-a4ff-eb4edbd814ca
-caps.latest.revision: "3"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 854df39394ef10bf2404fb3f762586fb102fba7b
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 676b9d3c641f45736af50bc2290426e261b591c4
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# 方法: 署名のないフレンド アセンブリを作成する (C#)
この例では、署名のないアセンブリと共にフレンド アセンブリを使用する方法を示します。
@@ -98,9 +89,9 @@ ms.lasthandoff: 11/21/2017
## .NET Framework セキュリティ
属性と クラスには類似点があります。 主な違いは、 はセキュリティ アクセス許可を要求することで特定のコード セクションを実行できますが、 属性では `internal` 型とメンバーの参照可能範囲を制御することです。
-## 関連項目
+## 参照
[アセンブリとグローバル アセンブリ キャッシュ (C#)](../../../../csharp/programming-guide/concepts/assemblies-gac/index.md)
- [フレンド アセンブリ (c#)](../../../../csharp/programming-guide/concepts/assemblies-gac/friend-assemblies.md)
- [方法: 署名されたフレンド アセンブリ (c#) を作成します。](../../../../csharp/programming-guide/concepts/assemblies-gac/how-to-create-signed-friend-assemblies.md)
+ [フレンド アセンブリ (C#)](../../../../csharp/programming-guide/concepts/assemblies-gac/friend-assemblies.md)
+ [方法: 署名されたフレンド アセンブリを作成する (C#)](../../../../csharp/programming-guide/concepts/assemblies-gac/how-to-create-signed-friend-assemblies.md)
[C# プログラミング ガイド](../../../../csharp/programming-guide/index.md)
diff --git a/docs/csharp/programming-guide/concepts/assemblies-gac/walkthrough-embedding-types-from-managed-assemblies-in-visual-studio.md b/docs/csharp/programming-guide/concepts/assemblies-gac/walkthrough-embedding-types-from-managed-assemblies-in-visual-studio.md
index e16f35cdb5a..ac3c755db03 100644
--- a/docs/csharp/programming-guide/concepts/assemblies-gac/walkthrough-embedding-types-from-managed-assemblies-in-visual-studio.md
+++ b/docs/csharp/programming-guide/concepts/assemblies-gac/walkthrough-embedding-types-from-managed-assemblies-in-visual-studio.md
@@ -1,21 +1,12 @@
---
-title: "チュートリアル: Visual Studio でマネージ アセンブリからの型を埋め込む (C#)"
-ms.custom:
+title: 'チュートリアル: Visual Studio でマネージ アセンブリからの型を埋め込む (C#)'
ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
ms.assetid: 55ed13c9-c5bb-4bc2-bcd8-0587eb568864
-caps.latest.revision: "3"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 5b07b940d6287de0caf41c7d15f3036ad4041ad0
-ms.sourcegitcommit: 8ed4ebc15b5ef89d06a7507dc9d5e306e30accf7
+ms.openlocfilehash: 90bb523e3eb42cea2cd0a9d1e753e4d9b9873c0c
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 12/14/2017
+ms.lasthandoff: 05/04/2018
---
# チュートリアル: Visual Studio でマネージ アセンブリからの型を埋め込む (C#)
厳密な名前を持つマネージ アセンブリから型情報を埋め込むと、アプリケーション内で型を疎結合して、バージョンに依存しないプログラムを実現できます。 つまり、各バージョン用の再コンパイルを必要とすることなく、マネージ ライブラリの複数のバージョンから型を使用するプログラムを記述できます。
@@ -88,7 +79,7 @@ ms.lasthandoff: 12/14/2017
}
```
-7. **[ツール]** メニューの **[GUID の作成]**をクリックします。 **[GUID の作成]**ダイアログ ボックスで、**[レジストリ形式]** をクリックし、**[コピー]** をクリックします。 **[終了]** をクリックします。
+7. **[ツール]** メニューの **[GUID の作成]** をクリックします。 **[GUID の作成]** ダイアログ ボックスで、**[レジストリ形式]** をクリックし、**[コピー]** をクリックします。 **[終了]** をクリックします。
8. `Guid` 属性で、サンプルの GUID を削除し、**[GUID の作成]** ダイアログ ボックスからコピーした GUID を貼り付けます。 コピーした GUID から中かっこ ({}) を削除します。
@@ -240,7 +231,7 @@ ms.lasthandoff: 12/14/2017
6. ファイル エクスプローラーで、出力パスのフォルダー (たとえば、C:\TypeEquivalenceSample) を開きます。 TypeEquivalenceClient.exe をダブルクリックして、プログラムを実行します。 プログラムでは、再コンパイルを行わなくても、新バージョンの TypeEquivalenceRuntime アセンブリが反映されます。
-## 関連項目
+## 参照
[/link (C# コンパイラ オプション)](../../../../csharp/language-reference/compiler-options/link-compiler-option.md)
[C# プログラミング ガイド](../../../../csharp/programming-guide/index.md)
[アセンブリを使用したプログラミング](../../../../framework/app-domains/programming-with-assemblies.md)
diff --git a/docs/csharp/programming-guide/concepts/attributes/attributeusage.md b/docs/csharp/programming-guide/concepts/attributes/attributeusage.md
index ce088507284..1685d51df99 100644
--- a/docs/csharp/programming-guide/concepts/attributes/attributeusage.md
+++ b/docs/csharp/programming-guide/concepts/attributes/attributeusage.md
@@ -1,155 +1,89 @@
---
title: AttributeUsage (C#)
-ms.custom:
-ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
-ms.assetid: 22c45568-9a6a-4c2f-8480-f38c1caa0a99
-caps.latest.revision: "3"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: e9351ee10b523145ace1249bf17388da0cdba277
-ms.sourcegitcommit: 685143b62385500f59bc36274b8adb191f573a16
+ms.date: 04/25/2018
+ms.openlocfilehash: 869e6509e55268767915a783a8652f7f950d7137
+ms.sourcegitcommit: 88f251b08bf0718ce119f3d7302f514b74895038
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 12/09/2017
+ms.lasthandoff: 05/10/2018
---
# AttributeUsage (C#)
-カスタム属性クラスの使用方法を決定します。 `AttributeUsage` は、カスタム属性の定義に適用して新しい属性の適用方法を制御できる属性です。 明示的に適用するときの既定の設定は次のようになります。
-
-```csharp
-[System.AttributeUsage(System.AttributeTargets.All,
- AllowMultiple = false,
- Inherited = true)]
-class NewAttribute : System.Attribute { }
-```
-
- この例では、属性にできる任意のコード エンティティに `NewAttribute` クラスを適用できますが、各エンティティに適用できるのは 1 回だけです。 基底クラスに適用すると、派生クラスによって継承されます。
-
- `AllowMultiple` 引数と `Inherited` 引数は省略できるので、次のコードは同じ効果を持ちます。
-
-```csharp
-[System.AttributeUsage(System.AttributeTargets.All)]
-class NewAttribute : System.Attribute { }
-```
-
- 最初の `AttributeUsage` 引数は、 列挙型の 1 つまたは複数の要素でなければなりません。 次のように、複数のターゲット型を OR 演算子で 1 つにまとめることができます。
-
-```csharp
-using System;
-
-[AttributeUsage(AttributeTargets.Property | AttributeTargets.Field)]
-class NewPropertyOrFieldAttribute : Attribute { }
-```
-
- `AllowMultiple` 引数を `true` に設定すると、次のように、結果の属性を 1 つのエンティティに複数回適用できます。
-
-```csharp
-using System;
-
-[AttributeUsage(AttributeTargets.Class, AllowMultiple = true)]
-class MultiUseAttr : Attribute { }
-
-[MultiUseAttr]
-[MultiUseAttr]
-class Class1 { }
-
-[MultiUseAttr, MultiUseAttr]
-class Class2 { }
-```
-
- この例では、`AllowMultiple` が `true` に設定されているので、`MultiUseAttr` を繰り返し適用できます。 示されているどちらの形式でも、複数の属性を適用できます。
-
- `Inherited` を `false` に設定すると、属性化されたクラスから派生するクラスは属性を継承しません。 例:
-
-```csharp
-using System;
-
-[AttributeUsage(AttributeTargets.Class, Inherited = false)]
-class Attr1 : Attribute { }
-
-[Attr1]
-class BClass { }
-
-class DClass : BClass { }
-```
-
- この例では、`Attr1` は継承によって `DClass` に適用されません。
-
-## コメント
- `AttributeUsage` 属性は、1 回だけ使用できる属性です。同じクラスに複数回適用することはできません。 `AttributeUsage` は の別名です。
-
- 詳しくは、「[リフレクションを使用した属性へのアクセス (C#)](../../../../csharp/programming-guide/concepts/attributes/accessing-attributes-by-using-reflection.md)」をご覧ください。
-
-## 例
- 次の例を見ると、`AttributeUsage` 属性に対する `Inherited` 引数と `AllowMultiple` 引数の効果、およびクラスに適用されているカスタム属性の列挙方法がわかります。
-
-```csharp
-using System;
-
-// Create some custom attributes:
-[AttributeUsage(System.AttributeTargets.Class, Inherited = false)]
-class A1 : System.Attribute { }
-
-[AttributeUsage(System.AttributeTargets.Class)]
-class A2 : System.Attribute { }
-
-[AttributeUsage(System.AttributeTargets.Class, AllowMultiple = true)]
-class A3 : System.Attribute { }
-
-// Apply custom attributes to classes:
-[A1, A2]
-class BaseClass { }
-
-[A3, A3]
-class DerivedClass : BaseClass { }
-
-public class TestAttributeUsage
-{
- static void Main()
- {
- BaseClass b = new BaseClass();
- DerivedClass d = new DerivedClass();
-
- // Display custom attributes for each class.
- Console.WriteLine("Attributes on Base Class:");
- object[] attrs = b.GetType().GetCustomAttributes(true);
- foreach (Attribute attr in attrs)
- {
- Console.WriteLine(attr);
- }
-
- Console.WriteLine("Attributes on Derived Class:");
- attrs = d.GetType().GetCustomAttributes(true);
- foreach (Attribute attr in attrs)
- {
- Console.WriteLine(attr);
- }
- }
-}
-```
-
-## 出力例
-
-```
-Attributes on Base Class:
-A1
-A2
-Attributes on Derived Class:
-A3
-A3
-A2
-```
-
-## 関連項目
+
+カスタム属性クラスの使用方法を決定します。 は、カスタム属性定義に適用する属性です。 `AttributeUsage` 属性を使用すると、以下を制御できます。
+
+- 適用できるプログラム要素属性。 使用法を制限しない限り、属性は以下のプログラム要素のいずれかに適用できます。
+ - アセンブリ
+ - name
+ - フィールド
+ - event
+ - メソッド
+ - param
+ - property
+ - return
+ - 型
+- 1 つのプログラム要素に属性を複数回適用できるかどうか。
+- 属性が派生クラスに継承されるかどうか。
+
+明示的に適用すると、既定の設定は次の例のようになります。
+
+[!code-csharp[Define a new attribute](../../../../../samples/snippets/csharp/attributes/NewAttribute.cs#1)]
+
+この例で `NewAttribute` クラスはサポートされている任意のプログラム要素に適用できます。 ただし、各エンティティに適用できるのは 1 回のみです。 基底クラスに適用すると、属性は派生クラスに継承されます。
+
+ 引数と 引数は省略できるので、次のコードは同じ効果を持ちます。
+
+[!code-csharp[Omit optional attributes](../../../../../samples/snippets/csharp/attributes/NewAttribute.cs#2)]
+
+最初の 引数は、 列挙型の 1 つまたは複数の要素でなければなりません。 次の例のように、複数のターゲット型を OR 演算子で 1 つにまとめることができます。
+
+[!code-csharp[Create an attribute for fields or properties](../../../../../samples/snippets/csharp/attributes/NewPropertyOrFieldAttribute.cs#1)]
+
+C# 7.3 以降、プロパティ、または自動実装バッキング フィールドに属性を適用できるようになりました。 属性に `field` 指定子を指定しない限り、属性はプロパティに適用されます。 その両方の例を次に示します。
+
+[!code-csharp[Create an attribute for fields or properties](../../../../../samples/snippets/csharp/attributes/NewPropertyOrFieldAttribute.cs#2)]
+
+ 引数が `true` の場合、次の例のように、結果の属性を 1 つのエンティティに複数回適用できます。
+
+[!code-csharp[Create and use an attribute that can be applied multiple times](../../../../../samples/snippets/csharp/attributes/MultiUseAttribute.cs#1)]
+
+この例では、`AllowMultiple` が `true` に設定されているので、`MultiUseAttribute` を繰り返し適用できます。 示されているどちらの形式でも、複数の属性を適用できます。
+
+ が `false` の場合、属性は属性クラスから派生したクラスに継承されません。 例:
+
+[!code-csharp[Create and use an attribute that can be applied multiple times](../../../../../samples/snippets/csharp/attributes/NonInheritedAttribute.cs#1)]
+
+この例で、`NonInheritedAttribute` は継承によって `DClass` に適用されません。
+
+## コメント
+
+`AttributeUsage` 属性は、1 回だけ使用できる属性です。同じクラスに複数回適用することはできません。 `AttributeUsage` は の別名です。
+
+詳しくは、「[リフレクションを使用した属性へのアクセス (C#)](accessing-attributes-by-using-reflection.md)」をご覧ください。
+
+## 例
+
+次の例を見ると、 属性に対する 引数と 引数の効果、およびクラスに適用されているカスタム属性の列挙方法がわかります。
+
+[!code-csharp[Applying and querying attributes](../../../../../samples/snippets/csharp/attributes/Program.cs#1)]
+
+## 出力例
+
+```text
+Attributes on Base Class:
+FirstAttribute
+SecondAttribute
+Attributes on Derived Class:
+ThirdAttribute
+ThirdAttribute
+SecondAttribute
+```
+
+## 参照
- [C# プログラミング ガイド](../../../../csharp/programming-guide/index.md)
- [属性](../../../../../docs/standard/attributes/index.md)
- [リフレクション (C#)](../../../../csharp/programming-guide/concepts/reflection.md)
- [属性](../../../../csharp/programming-guide/concepts/attributes/index.md)
- [カスタム属性の作成 (C#)](../../../../csharp/programming-guide/concepts/attributes/creating-custom-attributes.md)
- [リフレクションを使用した属性へのアクセス (C#)](../../../../csharp/programming-guide/concepts/attributes/accessing-attributes-by-using-reflection.md)
+ [C# プログラミング ガイド](../..//index.md)
+ [属性](../../../..//standard/attributes/index.md)
+ [リフレクション (C#)](../reflection.md)
+ [属性](index.md)
+ [カスタム属性の作成 (C#)](creating-custom-attributes.md)
+ [リフレクションを使用した属性へのアクセス (C#)](accessing-attributes-by-using-reflection.md)
diff --git a/docs/csharp/programming-guide/concepts/linq/applicability-of-functional-transformation.md b/docs/csharp/programming-guide/concepts/linq/applicability-of-functional-transformation.md
index ac51493433f..27fad1ba755 100644
--- a/docs/csharp/programming-guide/concepts/linq/applicability-of-functional-transformation.md
+++ b/docs/csharp/programming-guide/concepts/linq/applicability-of-functional-transformation.md
@@ -1,21 +1,12 @@
---
-title: "関数型変換の適用範囲 (C#)"
-ms.custom:
+title: 関数型変換の適用範囲 (C#)
ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
ms.assetid: c78107bd-b006-4574-a3d4-bbf808388ff3
-caps.latest.revision: "4"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: c7196e128a6d61b2b28e955a79561db2b9a5e51b
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: b913c8e43c5e7a9ede6cb693ff6d3c34f3631607
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# 関数型変換の適用範囲 (C#)
純粋関数型変換は、さまざまな状況で適用できます。
@@ -40,7 +31,7 @@ ms.lasthandoff: 11/21/2017
繰り返しになりますが、C# は命令型の方法と関数型の方法の両方をサポートしているため、両方の要素を組み込むことがアプリケーションにとって最善の設計であることを覚えておいてください。
-## 関連項目
+## 参照
[純粋関数型変換の概要 (C#)](../../../../csharp/programming-guide/concepts/linq/introduction-to-pure-functional-transformations.md)
- [XML (c#) の関数型変換](../../../../csharp/programming-guide/concepts/linq/functional-transformation-of-xml.md)
+ [XML の関数型変換 (C#)](../../../../csharp/programming-guide/concepts/linq/functional-transformation-of-xml.md)
[純粋関数へのリファクタリング (C#)](../../../../csharp/programming-guide/concepts/linq/refactoring-into-pure-functions.md)
diff --git a/docs/csharp/programming-guide/concepts/linq/classification-of-standard-query-operators-by-manner-of-execution.md b/docs/csharp/programming-guide/concepts/linq/classification-of-standard-query-operators-by-manner-of-execution.md
index 1cd293aaaf7..22381ebd16c 100644
--- a/docs/csharp/programming-guide/concepts/linq/classification-of-standard-query-operators-by-manner-of-execution.md
+++ b/docs/csharp/programming-guide/concepts/linq/classification-of-standard-query-operators-by-manner-of-execution.md
@@ -1,21 +1,12 @@
---
-title: "実行方法による標準クエリ演算子の分類 (C#)"
-ms.custom:
+title: 実行方法による標準クエリ演算子の分類 (C#)
ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
ms.assetid: b9435ce5-a7cf-4182-9f01-f3468a5533dc
-caps.latest.revision: "3"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: ad1ad72526b7293cd81528bf1880b2326289f177
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 40b5859631b37f8d5e810de3c999742bafe9f6ee
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# 実行方法による標準クエリ演算子の分類 (C#)
標準クエリ演算子メソッドの LINQ to Objects 実装は、主に 2 とおりの方法 (即時と遅延) で実行されます。 遅延実行を使用するクエリ演算子は、さらに 2 つのカテゴリ (ストリーミングと非ストリーミング) に分けることができます。 それぞれのクエリ演算子がどのように動作するかを把握しておくと、指定したクエリの結果を理解するうえで役立ちます。 これは、データ ソースが変更される場合や、別のクエリに基づいてさらにクエリを作成する場合に特に便利です。 このトピックでは、標準クエリ演算子を、その実行方法に基づいて分類します。
@@ -44,59 +35,59 @@ ms.lasthandoff: 11/21/2017
|標準クエリ演算子|戻り値の型|即時実行|遅延実行 (ストリーミング)|遅延実行 (非ストリーミング)|
|-----------------------------|-----------------|-------------------------|----------------------------------|---------------------------------------|
-||TSource|X|||
-|||X|||
-|||X|||
-||||X||
-||1 つの数値|X|||
-||||X||
-||||X||
-|||X|||
-|||X|||
-||||X||
-||||X||
-||TSource|X|||
-||TSource|X|||
-|||X|||
-||||X|X|
-||TSource|X|||
-||TSource|X|||
-|||||X|
-||||X|X|
-|||X|X|
-||||X|X|
-||TSource|X|||
-||TSource|X|||
-|||X|||
-||1 つの数値、TSource、または TResult|X|||
-||1 つの数値、TSource、または TResult|X|||
-||||X||
-|||||X|
-|||||X|
-||||X||
-||||X||
-|||||X|
-||||X||
-||||X||
-|||X|||
-||TSource|X|||
-||TSource|X|||
-||||X||
-||||X||
-||1 つの数値|X|||
-||||X||
-|||X||
-|||||X|
-|||||X|
-||TSource 配列|X|||
-|||X|||
-|||X|||
-|||X|||
-||||X||
-||||X||
+||TSource|x|||
+|||x|||
+|||x|||
+||||x||
+||1 つの数値|x|||
+||||x||
+||||x||
+|||x|||
+|||x|||
+||||x||
+||||x||
+||TSource|x|||
+||TSource|x|||
+|||x|||
+||||x|x|
+||TSource|x|||
+||TSource|x|||
+|||||x|
+||||x|x|
+|||x|x|
+||||x|x|
+||TSource|x|||
+||TSource|x|||
+|||x|||
+||1 つの数値、TSource、または TResult|x|||
+||1 つの数値、TSource、または TResult|x|||
+||||x||
+|||||x|
+|||||x|
+||||x||
+||||x||
+|||||x|
+||||x||
+||||x||
+|||x|||
+||TSource|x|||
+||TSource|x|||
+||||x||
+||||x||
+||1 つの数値|x|||
+||||x||
+|||x||
+|||||x|
+|||||x|
+||TSource 配列|x|||
+|||x|||
+|||x|||
+|||x|||
+||||x||
+||||x||
-## 関連項目
+## 参照
[標準クエリ演算子の概要 (C#)](../../../../csharp/programming-guide/concepts/linq/standard-query-operators-overview.md)
- [標準クエリ演算子 (c#) のクエリ式の構文](../../../../csharp/programming-guide/concepts/linq/query-expression-syntax-for-standard-query-operators.md)
+ [標準クエリ演算子のクエリ式構文 (C#)](../../../../csharp/programming-guide/concepts/linq/query-expression-syntax-for-standard-query-operators.md)
[LINQ to Objects (C#)](../../../../csharp/programming-guide/concepts/linq/linq-to-objects.md)
diff --git a/docs/csharp/programming-guide/concepts/linq/how-to-create-a-document-with-namespaces-linq-to-xml.md b/docs/csharp/programming-guide/concepts/linq/how-to-create-a-document-with-namespaces-linq-to-xml.md
index 028dd855601..fc0ef51f621 100644
--- a/docs/csharp/programming-guide/concepts/linq/how-to-create-a-document-with-namespaces-linq-to-xml.md
+++ b/docs/csharp/programming-guide/concepts/linq/how-to-create-a-document-with-namespaces-linq-to-xml.md
@@ -1,21 +1,12 @@
---
-title: "方法 : 名前空間を持つドキュメントを作成する (C#) (LINQ to XML)"
-ms.custom:
+title: '方法 : 名前空間を持つドキュメントを作成する (C#) (LINQ to XML)'
ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
ms.assetid: 37e63c57-f86d-47ac-88a7-2c2d107def30
-caps.latest.revision: "3"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: d913cdf8b9018aa2bf91fd5a05b823e90ba63df2
-ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e
+ms.openlocfilehash: ab572e0af79d51205167ad60b1b80e8ba6b43707
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 10/18/2017
+ms.lasthandoff: 05/04/2018
---
# 方法 : 名前空間を持つドキュメントを作成する (C#) (LINQ to XML)
このトピックでは、名前空間を持つドキュメントを作成する方法について説明します。
@@ -66,7 +57,7 @@ Console.WriteLine(root);
## 例
次の例では、2 つの名前空間が含まれるドキュメントを作成します。 1 つは既定の名前空間です。 もう 1 つは、プレフィックスを持つ名前空間です。
- ルート要素に名前空間属性を含めると名前空間がシリアル化され、http://www.adventure-works.com が既定の名前空間となり、www.fourthcoffee.com はプレフィックス "fc" でシリアル化されます。 既定の名前空間を宣言する属性を作成するには、"xmlns" という名前の属性を、名前空間を指定せずに作成します。 属性の値は、既定の名前空間 URI です。
+ ルート要素に名前空間属性を含めることによって名前空間がシリアル化され、http://www.adventure-works.com が既定の名前空間となり、www.fourthcoffee.com はプレフィックス "fc" でシリアル化されます。 既定の名前空間を宣言する属性を作成するには、"xmlns" という名前の属性を、名前空間を指定せずに作成します。 属性の値は、既定の名前空間 URI です。
```csharp
// The http://www.adventure-works.com namespace is forced to be the default namespace.
@@ -150,5 +141,5 @@ Console.WriteLine(root);
```
-## 関連項目
+## 参照
[XML 名前空間の使用 (C#)](../../../../csharp/programming-guide/concepts/linq/working-with-xml-namespaces.md)
diff --git a/docs/csharp/programming-guide/concepts/linq/linq-to-xml-classes-overview.md b/docs/csharp/programming-guide/concepts/linq/linq-to-xml-classes-overview.md
index a55bfe3ec58..f6949e1d94b 100644
--- a/docs/csharp/programming-guide/concepts/linq/linq-to-xml-classes-overview.md
+++ b/docs/csharp/programming-guide/concepts/linq/linq-to-xml-classes-overview.md
@@ -1,21 +1,12 @@
---
-title: "LINQ to XML クラスの概要 (C#)"
-ms.custom:
+title: LINQ to XML クラスの概要 (C#)
ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
ms.assetid: bf666100-5392-4968-97f4-f6b9d3287d7b
-caps.latest.revision: "3"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 0dc4307c3cf87fa9b5cb38bdaa9d9bf77adf1424
-ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e
+ms.openlocfilehash: 619bf59c2b10cbb699f8e5b177991da9a0a2b238
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 10/18/2017
+ms.lasthandoff: 05/04/2018
---
# LINQ to XML クラスの概要 (C#)
このトピックでは、[!INCLUDE[sqltecxlinq](~/includes/sqltecxlinq-md.md)] 名前空間内の クラスの一覧を示し、各クラスについて簡単に説明します。
@@ -86,7 +77,7 @@ ms.lasthandoff: 10/18/2017
は、 に対してイベントが生成されるときのイベントの種類を指定します。
### XObjectChangeEventArgs クラス
- には、 イベントおよび イベントのデータが用意されています。
+ には、 イベントと イベントのデータが用意されています。
### XProcessingInstruction クラス
は、XML 処理命令を表します。 処理命令は、XML を処理するアプリケーションに情報を伝達します。
@@ -94,5 +85,5 @@ ms.lasthandoff: 10/18/2017
### XText クラス
は、テキスト ノードを表します。 このクラスを使用する必要はほとんどありません。 このクラスは、主に混合コンテンツに使用されます。
-## 関連項目
+## 参照
[LINQ to XML プログラミングの概要 (C#)](../../../../csharp/programming-guide/concepts/linq/linq-to-xml-programming-overview.md)
diff --git a/docs/csharp/programming-guide/concepts/linq/linq-to-xml-overview.md b/docs/csharp/programming-guide/concepts/linq/linq-to-xml-overview.md
index c30c5949c1e..b8db56df643 100644
--- a/docs/csharp/programming-guide/concepts/linq/linq-to-xml-overview.md
+++ b/docs/csharp/programming-guide/concepts/linq/linq-to-xml-overview.md
@@ -1,21 +1,12 @@
---
-title: "LINQ to XML の概要 (C#)"
-ms.custom:
+title: LINQ to XML の概要 (C#)
ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
ms.assetid: 716b94d3-0091-4de1-8e05-41bc069fa9dd
-caps.latest.revision: "3"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: 1c66e87ecc72bf711dfda33cd7c0ea35f126c1e7
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 318c5494134fd1dd3ac2adbf538d693ad4a5dbf8
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# LINQ to XML の概要 (C#)
XML は、多くのコンテキストでデータを書式設定する方法として広く採用されてきました。 たとえば、Web、構成ファイル、Microsoft Office Word ファイル、データベースで XML が使用されています。
@@ -72,7 +63,7 @@ select item;
- 上記の機能を組み合わせて使用した XML ツリーの構造の変換
## XML ツリーの作成
- プログラミングで最も重要な利点の 1 つ[!INCLUDE[sqltecxlinq](~/includes/sqltecxlinq-md.md)]は簡単に XML ツリーを作成します。 たとえば、小さな XML ツリーを作成するには、次のようにコードを記述します。
+ [!INCLUDE[sqltecxlinq](~/includes/sqltecxlinq-md.md)] でのプログラミングで最も重要な利点の 1 つは、XML ツリーを簡単に作成できるという点です。 たとえば、小さな XML ツリーを作成するには、次のようにコードを記述します。
```csharp
XElement contacts =
@@ -95,6 +86,6 @@ new XElement("Contacts",
詳しくは、「[XML ツリーの作成 (C#)](../../../../csharp/programming-guide/concepts/linq/creating-xml-trees.md)」をご覧ください。
-## 関連項目
+## 参照
[はじめに (LINQ to XML)](../../../../csharp/programming-guide/concepts/linq/getting-started-linq-to-xml.md)
diff --git a/docs/csharp/programming-guide/concepts/linq/standard-query-operators-overview.md b/docs/csharp/programming-guide/concepts/linq/standard-query-operators-overview.md
index 2b6bf18429b..54dfb59f84f 100644
--- a/docs/csharp/programming-guide/concepts/linq/standard-query-operators-overview.md
+++ b/docs/csharp/programming-guide/concepts/linq/standard-query-operators-overview.md
@@ -1,21 +1,12 @@
---
-title: "標準クエリ演算子の概要 (C#)"
-ms.custom:
+title: 標準クエリ演算子の概要 (C#)
ms.date: 07/20/2015
-ms.prod: .net
-ms.reviewer:
-ms.suite:
-ms.technology: devlang-csharp
-ms.topic: article
ms.assetid: 812fa119-5f65-4139-b4fa-55dccd8dc3ac
-caps.latest.revision: "3"
-author: BillWagner
-ms.author: wiwagn
-ms.openlocfilehash: bcf64b87eb7fa1cba863f809dc11ab0ccb68ea9b
-ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a
+ms.openlocfilehash: 36bd5927e64ffacb97beac28b8e7790204e08c5c
+ms.sourcegitcommit: 3d5d33f384eeba41b2dff79d096f47ccc8d8f03d
ms.translationtype: HT
ms.contentlocale: ja-JP
-ms.lasthandoff: 11/21/2017
+ms.lasthandoff: 05/04/2018
---
# 標準クエリ演算子の概要 (C#)
"*標準クエリ演算子*" は、LINQ パターンを形成するメソッドです。 これらのメソッドの大部分はシーケンスに対して機能します。ここでシーケンスとは、 インターフェイスまたは