From d2647e1230264a628d02ca1a84058b5fb4e86930 Mon Sep 17 00:00:00 2001 From: olprod Date: Thu, 30 Nov 2017 19:19:37 +0000 Subject: [PATCH] Commit translated content --- .../langversion-compiler-option.md | 68 +-- .../nostdlib-compiler-option.md | 43 +- .../interop/walkthrough-office-programming.md | 94 ++-- .../file-schema/wcf/net-pipe.md | 75 +-- .../configure-apps/file-schema/wcf/scopes.md | 90 ++-- .../wcf/system-servicemodel-activation.md | 51 +- .../certificatereference.md | 103 +++-- .../claimsauthenticationmanager.md | 94 ++-- .../claimtyperequired.md | 80 ++-- .../nameclaimtype.md | 99 ++-- .../sessionsecuritytokencache.md | 91 ++-- .../sessiontokenrequirement.md | 88 ++-- ...usernamesecuritytokenhandlerrequirement.md | 92 ++-- ...ehavior-of-servicebehaviors-of-workflow.md | 117 ++--- .../language-reference/between-entity-sql.md | 76 ++- .../ef/language-reference/cast-entity-sql.md | 72 ++- .../language-reference/divide-entity-sql.md | 71 ++- .../grouppartition-entity-sql.md | 58 +-- .../operator-precedence-entity-sql.md | 73 ++- ...yntax-examples-navigating-relationships.md | 78 ++-- .../adonet/sql/linq/boolean-data-types.md | 23 +- .../linq/communicating-with-the-database.md | 53 ++- ...g-operations-by-using-stored-procedures.md | 74 +-- ...to-retrieve-entity-conflict-information.md | 52 ++- .../data/adonet/sql/linq/object-identity.md | 70 +-- ...gh-querying-across-relationships-csharp.md | 81 ++-- .../implementing-a-resource-manager.md | 70 +-- ...g-concurrency-with-dependenttransaction.md | 65 +-- ...ynchronous-operations-wcf-data-services.md | 65 +-- ...ttach-an-existing-entity-to-dc-wcf-data.md | 59 +-- ...load-related-entities-wcf-data-services.md | 68 +-- ...nd-in-process-side-by-side-applications.md | 30 +- .../interop/registration-free-com-interop.md | 30 +- ...urity-and-public-read-only-array-fields.md | 63 ++- .../best-practices-for-system-net-classes.md | 25 +- ...ster-a-custom-protocol-using-webrequest.md | 32 +- ...ol-exe-code-access-security-policy-tool.md | 50 +- ...icordebugreferencevalue-setvalue-method.md | 52 +++ ...me-strongnamesignaturegeneration-method.md | 92 ++++ .../hosting/ihostautoevent-wait-method.md | 74 +++ ...er-threadisblockingforsuspension-method.md | 70 +++ .../hosting/ihostmemorymanager-interface.md | 60 +++ ...ostsyncmanager-createmanualevent-method.md | 76 +++ ...ihostsyncmanager-createsemaphore-method.md | 80 ++++ .../ihosttaskmanager-leaveruntime-method.md | 85 ++++ .../hosting/ihosttaskmanager-sleep-method.md | 76 +++ .../imetadataimport-findtyperef-method.md | 64 +++ .../imetadataimport-gettypedefprops-method.md | 76 +++ .../clr-profilers-and-windows-store-apps.md | 437 ++++++++++++++++++ ...llback4-rejitcompilationfinished-method.md | 70 +++ .../unmanaged-api/wmi/beginenumeration.md | 105 +++++ .../unmanaged-api/wmi/qualifierset-delete.md | 75 +++ .../unmanaged-api/wmi/spawnderivedclass.md | 81 ++++ ...ploying-wcf-applications-with-clickonce.md | 49 +- .../wcf/designing-service-contracts.md | 185 ++++---- ...rdinatorrecoverylogentrycreationfailure.md | 51 +- ...performancecounterinitializationfailure.md | 51 +- .../event-logging/wmiputinstancefailed.md | 51 +- ...actionbridge-registerparticipantfailure.md | 57 +-- ...ionbridge-registrationcoordinatorfailed.md | 53 ++- ...-durableparticipantreplaywhilepreparing.md | 57 +-- ...l-channels-connectionpoolcloseexception.md | 51 +- ...emodel-channels-msmqstartingapplication.md | 49 +- ...del-channels-peerchannelmessagereceived.md | 49 +- ...emodel-channels-pnrpregisteredaddresses.md | 49 +- ...vicemodel-channels-sslclientcertmissing.md | 49 +- ...rationservicehostcreatedserviceendpoint.md | 53 ++- .../system-servicemodel-messagewritten.md | 49 +- ...rvicemodel-portsharing-readnettcpconfig.md | 51 +- ...-securitysessionabortedfaultsendfailure.md | 49 +- .../wmi/getoperationcounterinstancename.md | 55 +-- .../wmi/transportsecuritybindingelement.md | 55 +-- .../extending-the-metadata-system.md | 54 +-- ...tom-authorization-manager-for-a-service.md | 96 ++-- .../feature-details/client-architecture.md | 83 ++-- ...ing-serialization-in-a-workflow-service.md | 51 +- .../wcf/feature-details/contracts.md | 91 ++-- .../discovery-find-and-findcriteria.md | 92 ++-- .../wcf/feature-details/filtering.md | 119 ++--- .../how-to-create-a-secure-session.md | 99 ++-- .../how-to-enable-streaming.md | 56 ++- ...or-a-service-using-a-configuration-file.md | 74 ++- .../internet-unsecured-client-and-service.md | 92 ++-- .../framework/wcf/feature-details/security.md | 65 +-- .../servicedescription-and-wsdl-reference.md | 189 ++++---- .../servicemodel-transaction-configuration.md | 68 +-- .../using-message-contracts.md | 209 +++++---- .../wcf/samples/basic-http-service.md | 71 +-- docs/framework/wcf/samples/jsonp.md | 72 +-- docs/framework/wcf/samples/known-types.md | 67 ++- .../wcf/samples/message-security-windows.md | 70 ++- .../wcf/samples/running-the-samples.md | 97 ++-- .../wcf/samples/saml-token-provider.md | 101 ++-- .../wcf/samples/transport-extensibility.md | 49 +- .../wcf/samples/wcf-to-message-queuing.md | 96 ++-- ...-installers-to-your-service-application.md | 105 +++-- .../1017-schedulecancelactivityworkitem.md | 50 +- .../1038-enternopersistblock.md | 50 +- .../1126-invokedmethodthrewexception.md | 52 ++- .../instance-encoding-option.md | 44 +- .../samples/constraint-types.md | 68 +-- .../samples/invokemethod.md | 66 +-- .../samples/tracking.md | 46 +- .../task-1-create-a-new-wpf-app.md | 68 +-- .../variable-and-argument-tracking.md | 75 +-- .../workflow-transactions.md | 53 ++- .../alpha-blending-lines-and-fills.md | 87 ++-- .../how-to-create-mdi-parent-forms.md | 75 +-- .../advanced/using-graphics-containers.md | 61 +-- ...why-transformation-order-is-significant.md | 85 ++-- ...dialog-component-overview-windows-forms.md | 64 +-- .../winforms/controls/constituent-controls.md | 72 +-- ...eveloping-custom-windows-forms-controls.md | 70 +-- .../winforms/creating-a-new-windows-form.md | 10 +- ...handle-keyboard-input-at-the-form-level.md | 85 ++-- .../wpf/advanced/digital-ink-overviews.md | 60 +-- ...-a-uielement-horizontally-or-vertically.md | 95 ++-- .../navigation-how-to-topics.md | 59 +-- docs/framework/wpf/controls/contextmenu.md | 64 +-- ...ow-to-find-a-treeviewitem-in-a-treeview.md | 82 ++-- .../wpf/controls/listbox-how-to-topics.md | 58 +-- .../wpf/controls/textblock-overview.md | 58 +-- .../wpf/controls/treeview-how-to-topics.md | 64 +-- .../wpf/data/how-to-clear-bindings.md | 68 +-- .../introduction-to-wpf-in-vs.md | 75 +-- .../custom-animations-overview.md | 187 ++++---- .../graphics-rendering-registry-settings.md | 123 ++--- .../path-animations-overview.md | 129 +++--- ...o-type-converters-and-markup-extensions.md | 160 ++++--- ...tributes-for-custom-types-and-libraries.md | 314 ++++++------- .../fsharp/language-reference/fsharp-types.md | 84 ++++ .../members/let-bindings-in-classes.md | 63 +++ .../accessing-a-sql-database-entities.md | 253 ++++++++++ ...fsharp-development-environment-features.md | 125 +++++ .../passing-a-uri-to-the-windows-runtime.md | 73 +-- ...re-time-zones-from-an-embedded-resource.md | 132 +++--- .../design-guidelines/unsealed-classes.md | 72 ++- docs/standard/security/decrypting-data.md | 239 ++++++++-- ...ting-keys-for-encryption-and-decryption.md | 116 ++--- ...crypt-xml-elements-with-asymmetric-keys.md | 107 ++--- .../how-to-serialize-an-object.md | 26 +- ...lternate-element-name-for-an-xml-stream.md | 38 +- ...form-by-using-two-datarepeater-controls.md | 77 ++- .../windows-forms/power-packs-controls.md | 55 ++- .../language-reference/attributes.md | 53 +-- .../data-types/boolean-data-type.md | 99 ++-- .../directives/region-directive.md | 52 +-- ...he-name-of-a-method-without-parentheses.md | 54 +-- ...ment-must-end-with-a-matching-end-class.md | 62 ++- ...eclared-without-explicit-delegate-types.md | 68 +-- .../end-of-statement-expected.md | 64 ++- ...licit-call-to-mybase-new-or-myclass-new.md | 52 +-- ...rameter-types-must-be-class-constrained.md | 72 ++- ...property-propertyname-is-not-accessible.md | 70 ++- ...-requires-a-withevents-variable-defined.md | 58 ++- .../error-messages/identifier-expected.md | 50 +- ...-from-typename1-to-typename2-in-copying.md | 70 ++- ...ires-operands-that-have-reference-types.md | 62 ++- ...-signature-compatible-with-the-delegate.md | 58 ++- ...nature-that-is-compatible-with-delegate.md | 64 ++- .../error-messages/out-of-string-space.md | 54 ++- .../range-variable-name-can-be-inferred.md | 62 ++- ...-hides-a-variable-in-an-enclosing-block.md | 64 ++- .../error-messages/resume-without-error.md | 54 ++- ...is-array-is-fixed-or-temporarily-locked.md | 60 ++- ...xml-entity-references-are-not-supported.md | 58 ++- .../keywords/math-summary.md | 59 +-- .../language-reference/modifiers/assembly.md | 50 +- .../language-reference/modifiers/byref.md | 59 ++- .../objects/my-computer-network-object.md | 58 ++- .../operators/right-shift-operator.md | 131 +++--- .../language-reference/queries/queries.md | 73 ++- .../queries/take-while-clause.md | 85 ++-- .../statements/as-clause.md | 76 ++- .../statements/resume-statement.md | 103 ++--- .../language-reference/xmldoc/param.md | 58 +-- ...tname-must-be-within-the-range-1-to-255.md | 42 +- docs/visual-basic/misc/bc2010.md | 44 +- docs/visual-basic/misc/bc30004.md | 46 +- docs/visual-basic/misc/bc30009.md | 51 +- docs/visual-basic/misc/bc30016.md | 54 +-- docs/visual-basic/misc/bc30019.md | 54 +-- docs/visual-basic/misc/bc30064.md | 48 +- docs/visual-basic/misc/bc30112.md | 44 +- docs/visual-basic/misc/bc30134.md | 45 +- docs/visual-basic/misc/bc30182.md | 52 ++- docs/visual-basic/misc/bc30239.md | 50 +- docs/visual-basic/misc/bc30293.md | 44 +- docs/visual-basic/misc/bc30381.md | 48 +- docs/visual-basic/misc/bc30639.md | 46 +- docs/visual-basic/misc/bc30683.md | 46 +- docs/visual-basic/misc/bc30786.md | 48 +- docs/visual-basic/misc/bc30815.md | 50 +- docs/visual-basic/misc/bc30948.md | 45 +- docs/visual-basic/misc/bc31162.md | 52 ++- docs/visual-basic/misc/bc31191.md | 46 +- docs/visual-basic/misc/bc31511.md | 48 +- docs/visual-basic/misc/bc31533.md | 51 +- docs/visual-basic/misc/bc32042.md | 50 +- docs/visual-basic/misc/bc32088.md | 63 +-- docs/visual-basic/misc/bc32089.md | 48 +- docs/visual-basic/misc/bc32100.md | 48 +- docs/visual-basic/misc/bc32118.md | 52 ++- docs/visual-basic/misc/bc33002.md | 56 +-- docs/visual-basic/misc/bc36572.md | 56 +-- docs/visual-basic/misc/bc36582.md | 46 +- docs/visual-basic/misc/bc36598.md | 46 +- docs/visual-basic/misc/bc36711.md | 48 +- docs/visual-basic/misc/bc40021.md | 63 +-- docs/visual-basic/misc/bc40053.md | 59 +-- docs/visual-basic/misc/bc42004.md | 57 +-- docs/visual-basic/misc/bc42014.md | 53 +-- ...of-periods-using-the-arguments-provided.md | 42 +- .../class-not-registered-on-local-machine.md | 49 +- .../misc/file-filename-is-write-protected.md | 37 +- ...be-parsed-using-the-current-fieldwidths.md | 48 +- ...-default-member-found-for-type-typename.md | 42 +- ...gistry-key-keyname-could-not-be-created.md | 40 +- docs/visual-basic/misc/run-time-messages.md | 172 ++++--- .../misc/search-text-not-found.md | 38 +- ...etfilepath-specifies-an-existing-folder.md | 41 +- ...ds-with-a-directory-separator-character.md | 41 +- .../misc/the-specified-path-does-not-exist.md | 39 +- ...-argumentname-must-be-a-positive-number.md | 44 +- .../walkthrough-creating-com-objects.md | 111 ++--- ...tasks-and-process-them-as-they-complete.md | 95 ++-- .../concepts/attributes/attributeusage.md | 68 ++- .../concepts/caller-information.md | 52 +-- .../creating-variant-generic-interfaces.md | 80 ++-- .../variance-in-delegates.md | 132 +++--- .../concepts/linq/aggregation-operations.md | 88 ++-- .../concepts/linq/concatenation-operations.md | 46 +- .../concepts/linq/converting-data-types.md | 72 ++- ...ine-and-compare-string-collections-linq.md | 50 +- ...e-linq-queries-with-regular-expressions.md | 32 +- ...n-element-with-a-specific-child-element.md | 44 +- ...join-content-from-dissimilar-files-linq.md | 44 +- .../concepts/linq/how-to-parse-a-string.md | 40 +- ...ssembly-s-metadata-with-reflection-linq.md | 36 +- ...o-query-for-characters-in-a-string-linq.md | 86 ++-- ...iles-with-a-specified-attribute-or-name.md | 40 +- ...e-the-value-of-an-attribute-linq-to-xml.md | 35 +- ...ry-that-finds-elements-based-on-context.md | 41 +- .../linq/maintaining-name-value-pairs.md | 67 ++- ...tomization-of-xname-objects-linq-to-xml.md | 34 +- .../concepts/linq/programming-with-nodes.md | 52 +-- .../concepts/linq/quantifier-operations.md | 60 ++- .../concepts/linq/set-operations.md | 74 ++- .../programming-guide/concepts/reflection.md | 62 ++- ...ection-used-by-a-collection-initializer.md | 54 ++- .../constants-enums/enumerations-overview.md | 81 ++-- .../how-to-declare-a-constant.md | 121 ++--- ...-group-related-constant-values-together.md | 67 ++- .../how-to-iterate-through-an-enumeration.md | 69 ++- .../data-types/how-to-declare-a-structure.md | 91 ++-- .../data-types/nullable-value-types.md | 122 +++-- .../data-types/type-conversions.md | 65 +-- .../value-types-and-reference-types.md | 89 ++-- .../working-with-dynamic-objects.md | 56 +-- ...o-combine-data-with-linq-by-using-joins.md | 127 +++-- ...-a-linq-query-result-as-a-specific-type.md | 87 ++-- ...e-how-objects-are-created-and-destroyed.md | 98 ++-- .../walkthrough-defining-classes.md | 94 ++-- .../value-comparisons.md | 81 ++-- ...o-call-a-procedure-that-returns-a-value.md | 81 ++-- .../zero-based-vs-one-based-string-access.md | 60 +-- ...ect-variable-and-assign-an-object-to-it.md | 84 ++-- .../program-structure/main-procedure.md | 102 ++-- .../processing-the-xml-file.md | 70 ++- .../references-and-the-imports-statement.md | 81 ++-- .../command-line-compiler/highentropyva.md | 49 +- .../command-line-compiler/libpath.md | 65 +-- .../command-line-compiler/optioninfer.md | 68 +-- .../command-line-compiler/reference.md | 69 ++- .../command-line-compiler/resource.md | 63 +-- includes/net-current-v472plus.md | 1 + includes/tla2sharptla-net-md.md | 2 +- 277 files changed, 10757 insertions(+), 9037 deletions(-) create mode 100644 docs/framework/unmanaged-api/debugging/icordebugreferencevalue-setvalue-method.md create mode 100644 docs/framework/unmanaged-api/hosting/iclrstrongname-strongnamesignaturegeneration-method.md create mode 100644 docs/framework/unmanaged-api/hosting/ihostautoevent-wait-method.md create mode 100644 docs/framework/unmanaged-api/hosting/ihostgcmanager-threadisblockingforsuspension-method.md create mode 100644 docs/framework/unmanaged-api/hosting/ihostmemorymanager-interface.md create mode 100644 docs/framework/unmanaged-api/hosting/ihostsyncmanager-createmanualevent-method.md create mode 100644 docs/framework/unmanaged-api/hosting/ihostsyncmanager-createsemaphore-method.md create mode 100644 docs/framework/unmanaged-api/hosting/ihosttaskmanager-leaveruntime-method.md create mode 100644 docs/framework/unmanaged-api/hosting/ihosttaskmanager-sleep-method.md create mode 100644 docs/framework/unmanaged-api/metadata/imetadataimport-findtyperef-method.md create mode 100644 docs/framework/unmanaged-api/metadata/imetadataimport-gettypedefprops-method.md create mode 100644 docs/framework/unmanaged-api/profiling/clr-profilers-and-windows-store-apps.md create mode 100644 docs/framework/unmanaged-api/profiling/icorprofilercallback4-rejitcompilationfinished-method.md create mode 100644 docs/framework/unmanaged-api/wmi/beginenumeration.md create mode 100644 docs/framework/unmanaged-api/wmi/qualifierset-delete.md create mode 100644 docs/framework/unmanaged-api/wmi/spawnderivedclass.md create mode 100644 docs/fsharp/language-reference/fsharp-types.md create mode 100644 docs/fsharp/language-reference/members/let-bindings-in-classes.md create mode 100644 docs/fsharp/tutorials/type-providers/accessing-a-sql-database-entities.md create mode 100644 docs/fsharp/using-fsharp-in-visual-studio/visual-fsharp-development-environment-features.md create mode 100644 includes/net-current-v472plus.md diff --git a/docs/csharp/language-reference/compiler-options/langversion-compiler-option.md b/docs/csharp/language-reference/compiler-options/langversion-compiler-option.md index 6724c014750..08fb83a43b5 100644 --- a/docs/csharp/language-reference/compiler-options/langversion-compiler-option.md +++ b/docs/csharp/language-reference/compiler-options/langversion-compiler-option.md @@ -1,43 +1,24 @@ ---- +--- title: "-langversion (C# コンパイラ オプション)" -ms.date: 2015-07-20 +ms.date: 07/20/2015 ms.prod: .net -ms.technology: -- devlang-csharp +ms.technology: devlang-csharp ms.topic: article -f1_keywords: -- /langversion -dev_langs: -- CSharp +f1_keywords: /langversion helpviewer_keywords: - /langversion compiler option [C#] - -langversion compiler option [C#] - langversion compiler option [C#] ms.assetid: 3fb00b05-a0ff-4782-b313-13a4c0f62d94 -caps.latest.revision: 33 +caps.latest.revision: "33" author: BillWagner ms.author: wiwagn -translation.priority.ht: -- cs-cz -- de-de -- es-es -- fr-fr -- it-it -- ja-jp -- ko-kr -- pl-pl -- pt-br -- ru-ru -- tr-tr -- zh-cn -- zh-tw +ms.openlocfilehash: d034958b14c54540aa175a23067d47bd5d850bab +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a ms.translationtype: HT -ms.sourcegitcommit: 306c608dc7f97594ef6f72ae0f5aaba596c936e1 -ms.openlocfilehash: fc501c5532d27168d74d1a5f293abe59d3beeef1 -ms.contentlocale: ja-jp -ms.lasthandoff: 07/28/2017 - ---- +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- # /langversion (C# コンパイラ オプション) コンパイラが、選択した C# 言語仕様に含まれている構文のみを受け入れるようにします。 @@ -85,31 +66,31 @@ ms.lasthandoff: 07/28/2017 2. **[ビルド]** プロパティ ページをクリックします。 -3. [詳細設定 **** ] ボタンをクリックします。 +3. **[詳細設定]** ボタンをクリックします。 4. **言語バージョン**プロパティを変更します。 このコンパイラ オプションをプログラムで設定する方法については、「」を参照してください。 ## 関連項目 - [C# コンパイラのオプション](../../../csharp/language-reference/compiler-options/index.md) - [プロジェクトおよびソリューションのプロパティの管理](/visualstudio/ide/managing-project-and-solution-properties) + [C# コンパイラ オプション](../../../csharp/language-reference/compiler-options/index.md) + [プロジェクトおよびソリューションのプロパティの管理](/visualstudio/ide/managing-project-and-solution-properties) ### C# 言語仕様 - [C# 言語仕様リファレンス](../../../csharp/language-reference/language-specification/index.md): .NET Foundation - C# 1.0/1.1 [ISO/IEC 23270:2003](https://www.iso.org/standard/36768.html) 情報技術 -- C# 言語仕様: ISO カタログ - C# 2.0 [ISO/IEC 23270:2006](https://www.iso.org/standard/42926.html) 情報技術 -- C# 言語仕様: ISO カタログ - C# 2.0 [c042926_ISO_IEC_23270_2006(E).zip](http://go.microsoft.com/fwlink/?LinkId=144406) ISO/IEC 23270:2006 (PDF 形式) : 自由に利用可能な標準 ISO - C# 3.0 [CSharp Language Specification.doc](http://download.microsoft.com/download/3/8/8/388e7205-bc10-4226-b2a8-75351c669b09/CSharp%20Language%20Specification.doc) C# 言語仕様バージョン 3.0 : Microsoft Corporation + [C# 言語仕様リファレンス](../../../csharp/language-reference/language-specification/index.md): .NET Foundation + C# 1.0/1.1 [ISO/IEC 23270:2003](https://www.iso.org/standard/36768.html) 情報技術 -- C# 言語仕様: ISO カタログ + C# 2.0 [ISO/IEC 23270:2006](https://www.iso.org/standard/42926.html) 情報技術 -- C# 言語仕様: ISO カタログ + C# 2.0 [c042926_ISO_IEC_23270_2006(E).zip](http://go.microsoft.com/fwlink/?LinkId=144406) ISO/IEC 23270:2006 (PDF 形式) : 自由に利用可能な標準 ISO + C# 3.0 [CSharp Language Specification.doc](http://download.microsoft.com/download/3/8/8/388e7205-bc10-4226-b2a8-75351c669b09/CSharp%20Language%20Specification.doc) C# 言語仕様バージョン 3.0 : Microsoft Corporation C# 4.0 [Ecma-334.pdf](https://www.ecma-international.org/publications/files/ECMA-ST/Ecma-334.pdf) Standard ECMA-334 4th Edition - C# 5.0 [CSharp Language Specification.docx](https://www.microsoft.com/en-us/download/details.aspx?id=7029) C# 言語仕様バージョン 5.0 : Microsoft Corporation - C# 6.0 [README.md](https://github.com/dotnet/csharplang/blob/master/spec/README.md) C# 言語仕様バージョン 6 - 非公式ドラフト: .NET Foundation - C# 7.0 (現在使用できません) + C# 5.0 [CSharp Language Specification.docx](https://www.microsoft.com/download/details.aspx?id=7029) C# 言語仕様バージョン 5.0 : Microsoft Corporation + C# 6.0 [README.md](https://github.com/dotnet/csharplang/blob/master/spec/README.md) C# 言語仕様バージョン 6 - 非公式ドラフト: .NET Foundation + C# 7.0 (現在使用できません) ### すべての言語機能をサポートするために必要な最小コンパイラ バージョン @@ -126,4 +107,3 @@ ms.lasthandoff: 07/28/2017 [↩](#TCS72)CS72: Microsoft Visual Studio/Build Tools 20?? [↩](#TCS8)CS8: Microsoft Visual Studio/Build Tools 20?? --> - diff --git a/docs/csharp/language-reference/compiler-options/nostdlib-compiler-option.md b/docs/csharp/language-reference/compiler-options/nostdlib-compiler-option.md index d286b05cf47..ed49d0e11c4 100644 --- a/docs/csharp/language-reference/compiler-options/nostdlib-compiler-option.md +++ b/docs/csharp/language-reference/compiler-options/nostdlib-compiler-option.md @@ -1,44 +1,24 @@ ---- +--- title: "-nostdlib (C# コンパイラ オプション)" -ms.date: 2015-07-20 +ms.date: 07/20/2015 ms.prod: .net -ms.technology: -- devlang-csharp +ms.technology: devlang-csharp ms.topic: article -f1_keywords: -- /nostdlib -dev_langs: -- CSharp +f1_keywords: /nostdlib helpviewer_keywords: - nostdlib compiler option [C#] - -nostdlib compiler option [C#] - /nostdlib compiler option [C#] ms.assetid: ec197989-fa49-4725-a455-e06b551eb65f -caps.latest.revision: 18 +caps.latest.revision: "18" author: BillWagner ms.author: wiwagn -translation.priority.ht: -- de-de -- es-es -- fr-fr -- it-it -- ja-jp -- ko-kr -- ru-ru -- zh-cn -- zh-tw -translation.priority.mt: -- cs-cz -- pl-pl -- pt-br -- tr-tr +ms.openlocfilehash: ad3ca7775512623de43c7fe6b7fe1cf481ccca87 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e ms.translationtype: HT -ms.sourcegitcommit: 306c608dc7f97594ef6f72ae0f5aaba596c936e1 -ms.openlocfilehash: 1d500e2e55ab3117aa674e11d6cdd25703035879 -ms.contentlocale: ja-jp -ms.lasthandoff: 07/28/2017 - ---- +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- # /nostdlib (C# コンパイラ オプション) **/nostdlib** は、System 名前空間の全体を定義する mscorlib.dll がインポートされないようにします。 @@ -59,7 +39,7 @@ ms.lasthandoff: 07/28/2017 2. **[ビルド]** プロパティ ページをクリックします。 -3. [詳細設定 **** ] ボタンをクリックします。 +3. **[詳細設定]** ボタンをクリックします。 4. **[mscorlib.dll を参照しない]** プロパティを変更します。 @@ -67,4 +47,3 @@ ms.lasthandoff: 07/28/2017 ## 関連項目 [C# コンパイラ オプション](../../../csharp/language-reference/compiler-options/index.md) - diff --git a/docs/csharp/programming-guide/interop/walkthrough-office-programming.md b/docs/csharp/programming-guide/interop/walkthrough-office-programming.md index 5dc099a5d9f..62487a6bdde 100644 --- a/docs/csharp/programming-guide/interop/walkthrough-office-programming.md +++ b/docs/csharp/programming-guide/interop/walkthrough-office-programming.md @@ -1,41 +1,26 @@ ---- +--- title: "チュートリアル: Office のプログラミング (C# および Visual Basic)" -ms.date: 2015-07-20 +ms.date: 07/20/2015 ms.prod: .net -ms.technology: -- devlang-csharp +ms.technology: devlang-csharp ms.topic: article dev_langs: -- CSharp +- csharp +- vb helpviewer_keywords: - Office, programming in Visual Basic and C# - Office programming [C#] - Office programming [Visual Basic] ms.assetid: 519cff31-f80b-4f0e-a56b-26358d0f8c51 -caps.latest.revision: 46 +caps.latest.revision: "46" author: BillWagner ms.author: wiwagn -translation.priority.ht: -- cs-cz -- de-de -- es-es -- fr-fr -- it-it -- ja-jp -- ko-kr -- pl-pl -- pt-br -- ru-ru -- tr-tr -- zh-cn -- zh-tw +ms.openlocfilehash: 862f445107e0f58e8e00fba1708156c747165def +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a ms.translationtype: HT -ms.sourcegitcommit: b37d1d7ff75aebfcdf3e849931a5d2b3924d5d7a -ms.openlocfilehash: 8c1195289d70e111d5c3551d004708de7722c8e9 -ms.contentlocale: ja-jp -ms.lasthandoff: 09/06/2017 - ---- +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- # チュートリアル: Office のプログラミング (C# および Visual Basic) Visual Studio には、Microsoft Office のプログラミングを改善する C# および Visual Basic の新機能が導入されています。 便利な C# の機能には、名前付き引数、省略可能な引数、型 `dynamic` の戻り値があります。 COM プログラミングでは、`ref` キーワードを省略し、インデックス付きプロパティにアクセスできます。 Visual Basic の機能には、自動実装プロパティ、ラムダ式内のステートメント、コレクション初期化子などがあります。 @@ -83,7 +68,7 @@ Visual Studio には、Microsoft Office のプログラミングを改善する 2. 次の `Imports` ステートメント (Visual Basic) または `using` ディレクティブ (C#) が含まれていない場合は、コード ファイルの先頭に追加します。 - [!code-cs[csOfficeWalkthrough#1](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_1.cs)] + [!code-csharp[csOfficeWalkthrough#1](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_1.cs)] [!code-vb[csOfficeWalkthrough#1](../../../csharp/programming-guide/interop/codesnippet/VisualBasic/walkthrough-office-programming_1.vb)] @@ -93,13 +78,13 @@ Visual Studio には、Microsoft Office のプログラミングを改善する 2. `Account` クラスの定義を次のコードに置き換えます。 このクラス定義では、*自動実装プロパティ*が使用されます。 詳細については、「[自動実装プロパティ](../../../visual-basic/programming-guide/language-features/procedures/auto-implemented-properties.md)」を参照してください。 - [!code-cs[csOfficeWalkthrough#2](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_2.cs)] + [!code-csharp[csOfficeWalkthrough#2](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_2.cs)] [!code-vb[csOfficeWalkthrough#2](../../../csharp/programming-guide/interop/codesnippet/VisualBasic/walkthrough-office-programming_2.vb)] 3. 2 つの口座を含む `bankAccounts` 一覧を作成するには、次のコードを追加する、*ThisAddIn.vb* または *ThisAddIn.cs* の `ThisAddIn_Startup` メソッドに追加します。 一覧の宣言では、*コレクション初期化子*が使用されます。 詳細については、「[コレクション初期化子](../../../visual-basic/programming-guide/language-features/collection-initializers/index.md)」を参照してください。 - [!code-cs[csOfficeWalkthrough#3](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_3.cs)] + [!code-csharp[csOfficeWalkthrough#3](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_3.cs)] [!code-vb[csOfficeWalkthrough#3](../../../csharp/programming-guide/interop/codesnippet/VisualBasic/walkthrough-office-programming_3.vb)] @@ -107,7 +92,7 @@ Visual Studio には、Microsoft Office のプログラミングを改善する 1. 同じファイル内で、次のメソッドを `ThisAddIn` クラスに追加します。 このメソッドは、Excel ブックを設定し、データを Excel ブックにエクスポートします。 - [!code-cs[csOfficeWalkthrough#4](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_4.cs)] + [!code-csharp[csOfficeWalkthrough#4](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_4.cs)] [!code-vb[csOfficeWalkthrough#4](../../../csharp/programming-guide/interop/codesnippet/VisualBasic/walkthrough-office-programming_4.vb)] @@ -119,11 +104,11 @@ Visual Studio には、Microsoft Office のプログラミングを改善する - [Range](http://go.microsoft.com/fwlink/?LinkId=210911) オブジェクトの `Range` および `Offset` プロパティでは*インデックス付きプロパティ*機能を使用します。 この機能では、次の一般的な C# 構文を使用して COM 型からこれらのプロパティを使用することができます。 また、インデックス付きプロパティを使用すると、`Value` プロパティを使用せずに、`Range` オブジェクトの `Value2` プロパティを使用できます。 `Value` プロパティはインデックス付きですが、インデックスはオプションです。 次の例では、省略可能な引数とインデックス付きプロパティは連携しています。 - [!code-cs[csOfficeWalkthrough#5](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_5.cs)] + [!code-csharp[csOfficeWalkthrough#5](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_5.cs)] 以前のバージョンの言語では、次の特殊な構文が必要です。 - [!code-cs[csOfficeWalkthrough#6](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_6.cs)] + [!code-csharp[csOfficeWalkthrough#6](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_6.cs)] 独自のインデックス付きプロパティを作成することはできません。 この機能では、既存のインデックス付きプロパティの使用のみがサポートされます。 @@ -131,7 +116,7 @@ Visual Studio には、Microsoft Office のプログラミングを改善する 2. 次のコードを `DisplayInExcel` の末尾に追加して、コンテンツに合わせて列の幅を調整します。 - [!code-cs[csOfficeWalkthrough#7](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_7.cs)] + [!code-csharp[csOfficeWalkthrough#7](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_7.cs)] [!code-vb[csOfficeWalkthrough#7](../../../csharp/programming-guide/interop/codesnippet/VisualBasic/walkthrough-office-programming_7.vb)] @@ -139,7 +124,7 @@ Visual Studio には、Microsoft Office のプログラミングを改善する たとえば、`excelApp.Columns[1]` は `Object` を返し、`AutoFit` は Excel の [Range](http://go.microsoft.com/fwlink/?LinkId=210911) メソッドであるとします。 `dynamic` がない場合、`excelApp.Columns[1]` のインスタンスとして、`Range` によって返されたオブジェクトをキャストしてから、`AutoFit` メソッドを呼び出す必要があります。 - [!code-cs[csOfficeWalkthrough#8](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_8.cs)] + [!code-csharp[csOfficeWalkthrough#8](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_8.cs)] 相互運用機能型の埋め込みの詳細については、このトピックの後半の「PIA 参照を検索するには」および「PIA の依存関係を復元するには」の手順を参照してください。 `dynamic` の詳細については、「[dynamic (C# リファレンス)](../../../csharp/language-reference/keywords/dynamic.md)」または「[dynamic 型の使用 (C# プログラミング ガイド)](../../../csharp/programming-guide/types/using-type-dynamic.md)」を参照してください。 @@ -147,7 +132,7 @@ Visual Studio には、Microsoft Office のプログラミングを改善する 1. `ThisAddIn_StartUp` メソッドの末尾に、次のコードを追加します。 `DisplayInExcel` に対する呼び出しには、2 つの引数が含まれています。 最初の引数は、処理する口座の一覧の名前です。 2 番目の引数は、データの処理方法を定義する複数行のラムダ式です。 各口座の `ID` 値と `balance` 値が隣接するセルに表示され、残高が 0 より少ない場合、行が赤で表示されます。 詳しくは、「[ラムダ式](../../../visual-basic/programming-guide/language-features/procedures/lambda-expressions.md)」をご覧ください。 - [!code-cs[csOfficeWalkthrough#9](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_9.cs)] + [!code-csharp[csOfficeWalkthrough#9](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_9.cs)] [!code-vb[csOfficeWalkthrough#9](../../../csharp/programming-guide/interop/codesnippet/VisualBasic/walkthrough-office-programming_9.vb)] @@ -157,7 +142,7 @@ Visual Studio には、Microsoft Office のプログラミングを改善する 1. `ThisAddIn_StartUp` メソッドの末尾に次のコードを追加して、Excel ブックへのリンクを含む Word 文書を作成します。 - [!code-cs[csOfficeWalkthrough#10](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_10.cs)] + [!code-csharp[csOfficeWalkthrough#10](../../../csharp/programming-guide/interop/codesnippet/CSharp/walkthrough-office-programming_10.cs)] [!code-vb[csOfficeWalkthrough#10](../../../csharp/programming-guide/interop/codesnippet/VisualBasic/walkthrough-office-programming_10.vb)] @@ -179,7 +164,7 @@ Visual Studio には、Microsoft Office のプログラミングを改善する 3. [Visual Studio コマンド プロンプト] ウィンドウに「`ildasm`」と入力し、Enter キーを押します。 [IL DASM] ウィンドウが表示されます。 -4. [IL DASM] ウィンドウの **[ファイル]** メニューで **[ファイル]**、**[開く]** をクリックします。 **[Visual Studio \<バージョン>]** をダブルクリックし、**[プロジェクト]** をダブルクリックします。 プロジェクトのフォルダーを開き、bin/Debug フォルダーで*プロジェクト名*.dll を見つけます。 *プロジェクト名*.dll をダブルクリックします。 新しいウィンドウに、他のモジュールおよびアセンブリへの参照に加えて、プロジェクトの属性が表示されます。 名前空間 `Microsoft.Office.Interop.Excel` と `Microsoft.Office.Interop.Word` はアセンブリに含まれています。 Visual Studio の既定では、コンパイラは、参照 PIA からアセンブリに必要な型をインポートします。 +4. [IL DASM] ウィンドウの **[ファイル]** メニューで **[ファイル]** > **[開く]** をクリックします。 **[Visual Studio \<バージョン>]** をダブルクリックし、**[プロジェクト]** をダブルクリックします。 プロジェクトのフォルダーを開き、bin/Debug フォルダーで*プロジェクト名*.dll を見つけます。 *プロジェクト名*.dll をダブルクリックします。 新しいウィンドウに、他のモジュールおよびアセンブリへの参照に加えて、プロジェクトの属性が表示されます。 名前空間 `Microsoft.Office.Interop.Excel` と `Microsoft.Office.Interop.Word` はアセンブリに含まれています。 Visual Studio の既定では、コンパイラは、参照 PIA からアセンブリに必要な型をインポートします。 詳細については、「[方法 : アセンブリの内容を表示する](../../../framework/app-domains/how-to-view-assembly-contents.md)」を参照してください。 @@ -211,22 +196,21 @@ Visual Studio には、Microsoft Office のプログラミングを改善する 8. Visual Studio で、**[ビルド]** メニューの **[ソリューションのクリーン]** をクリックして、完成したプロジェクトをクリーンアップします。 ## 関連項目 - [自動実装プロパティ](../../../visual-basic/programming-guide/language-features/procedures/auto-implemented-properties.md) - [自動実装プロパティ](../../../csharp/programming-guide/classes-and-structs/auto-implemented-properties.md) - [コレクション初期化子](../../../visual-basic/programming-guide/language-features/collection-initializers/index.md) - [オブジェクト初期化子とコレクション初期化子](../../../csharp/programming-guide/classes-and-structs/object-and-collection-initializers.md) - [省略可能なパラメーター](../../../visual-basic/programming-guide/language-features/procedures/optional-parameters.md) - [位置と名前による引数渡し](../../../visual-basic/programming-guide/language-features/procedures/passing-arguments-by-position-and-by-name.md) - [名前付き引数と省略可能な引数](../../../csharp/programming-guide/classes-and-structs/named-and-optional-arguments.md) - [事前バインディングと遅延バインディング](../../../visual-basic/programming-guide/language-features/early-late-binding/index.md) - [dynamic](../../../csharp/language-reference/keywords/dynamic.md) - [dynamic 型の使用](../../../csharp/programming-guide/types/using-type-dynamic.md) - [ラムダ式](../../../visual-basic/programming-guide/language-features/procedures/lambda-expressions.md) - [ラムダ式](../../../csharp/programming-guide/statements-expressions-operators/lambda-expressions.md) - [方法: COM 相互運用機能を使用したプログラミングでインデックス付きプロパティを使用する](../../../csharp/programming-guide/interop/how-to-use-indexed-properties-in-com-interop-rogramming.md) - [チュートリアル: Microsoft Office アセンブリからの型情報の埋め込み](http://msdn.microsoft.com/library/85b55e05-bc5e-4665-b6ae-e1ada9299fd3) - [チュートリアル: マネージ アセンブリからの型の埋め込み](http://msdn.microsoft.com/library/b28ec92c-1867-4847-95c0-61adfe095e21) - [チュートリアル : 初めての Excel 用 VSTO アドインの作成](http://msdn.microsoft.com/library/a855e2be-3ecf-4112-a7f5-ec0f7fad3b5f) - [COM 相互運用](../../../visual-basic/programming-guide/com-interop/index.md) + [自動実装プロパティ](../../../visual-basic/programming-guide/language-features/procedures/auto-implemented-properties.md) + [自動実装プロパティ](../../../csharp/programming-guide/classes-and-structs/auto-implemented-properties.md) + [コレクション初期化子](../../../visual-basic/programming-guide/language-features/collection-initializers/index.md) + [オブジェクト初期化子とコレクション初期化子](../../../csharp/programming-guide/classes-and-structs/object-and-collection-initializers.md) + [省略可能なパラメーター](../../../visual-basic/programming-guide/language-features/procedures/optional-parameters.md) + [位置と名前による引数渡し](../../../visual-basic/programming-guide/language-features/procedures/passing-arguments-by-position-and-by-name.md) + [名前付き引数と省略可能な引数](../../../csharp/programming-guide/classes-and-structs/named-and-optional-arguments.md) + [事前バインディングと遅延バインディング](../../../visual-basic/programming-guide/language-features/early-late-binding/index.md) + [dynamic](../../../csharp/language-reference/keywords/dynamic.md) + [dynamic 型の使用](../../../csharp/programming-guide/types/using-type-dynamic.md) + [ラムダ式](../../../visual-basic/programming-guide/language-features/procedures/lambda-expressions.md) + [ラムダ式](../../../csharp/programming-guide/statements-expressions-operators/lambda-expressions.md) + [方法: COM 相互運用機能を使用したプログラミングでインデックス付きプロパティを使用する](../../../csharp/programming-guide/interop/how-to-use-indexed-properties-in-com-interop-rogramming.md) + [チュートリアル: Microsoft Office アセンブリからの型情報の埋め込み](http://msdn.microsoft.com/library/85b55e05-bc5e-4665-b6ae-e1ada9299fd3) + [チュートリアル: マネージ アセンブリからの型の埋め込み](http://msdn.microsoft.com/library/b28ec92c-1867-4847-95c0-61adfe095e21) + [チュートリアル: 初めての Excel 用 VSTO アドインの作成](http://msdn.microsoft.com/library/a855e2be-3ecf-4112-a7f5-ec0f7fad3b5f) + [COM 相互運用](../../../visual-basic/programming-guide/com-interop/index.md) [相互運用性](../../../csharp/programming-guide/interop/index.md) - diff --git a/docs/framework/configure-apps/file-schema/wcf/net-pipe.md b/docs/framework/configure-apps/file-schema/wcf/net-pipe.md index fa44fa050ac..813b9fee39e 100644 --- a/docs/framework/configure-apps/file-schema/wcf/net-pipe.md +++ b/docs/framework/configure-apps/file-schema/wcf/net-pipe.md @@ -1,28 +1,33 @@ ---- -title: "<net.pipe> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: '<net.pipe>' +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 6a0f0318-f8f6-466c-9fae-199d7274a82e -caps.latest.revision: 11 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 11 ---- -# <net.pipe> +caps.latest.revision: "11" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 5d68c2113b08065f7ec74ae68d7f0b5918cab0aa +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <net.pipe> 名前付きパイプ接続の有効期間を管理し、名前付きパイプを介して到着するアクティベーション要求を処理する名前付きパイプ アクティベーション サービスの構成設定を指定します。 -## 構文 + \ +\ -``` +## 構文 +```xml ``` -## 型 +## 型 `Type` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 |属性|説明| -|--------|--------| -|`maxPendingAccepts`|整数は、共有サービスの待機エンドポイントで同時に受け入れる未処理のスレッドの最大数を示しています。 既定値は 2 です。| -|`maxPendingConnections`|ディスパッチを待機できる最大接続数を指定する整数。 既定値は 100 です。| -|`receiveTimeout`|フレーム データを読み取り、基礎となる接続から接続ディスパッチを実行するタイムアウトを指定する です。 既定値は "00:00:10" です。| +|---------------|-----------------| +|`maxPendingAccepts`|整数は、共有サービスの待機エンドポイントで同時に受け入れる未処理のスレッドの最大数を示しています。 既定値は 2 です。| +|`maxPendingConnections`|ディスパッチを待機できる最大接続数を指定する整数。 既定値は 100 です。| +|`receiveTimeout`|フレーム データを読み取り、基礎となる接続から接続ディスパッチを実行するタイムアウトを指定する `TimeSpan` です。 既定値は "00:00:10" です。| -### 子要素 +### 子要素 |要素|説明| -|--------|--------| -|[\](../../../../../docs/framework/configure-apps/file-schema/wcf/allowaccounts.md)|[!INCLUDE[indigo2](../../../../../includes/indigo2-md.md)] をホストするプロセスのユーザー アカウントを指定する `securityIdentifier` 属性が含まれており、共有サービスへの接続アクセス権が付与される構成要素のコレクションです。| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/wcf/allowaccounts.md)|`securityIdentifier` をホストするプロセスのユーザー アカウントを指定する [!INCLUDE[indigo2](../../../../../includes/indigo2-md.md)] 属性が含まれており、共有サービスへの接続アクセス権が付与される構成要素のコレクションです。| -### 親要素 +### 親要素 |要素|説明| -|--------|--------| -|[\](../../../../../docs/framework/configure-apps/file-schema/wcf/system-servicemodel-activation.md)|リスナー プロセス SMSvcHost.exe の設定が含まれています。| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/wcf/system-servicemodel-activation.md)|リスナー プロセス SMSvcHost.exe の設定が含まれています。| -## 参照 - \ No newline at end of file +## 関連項目 + diff --git a/docs/framework/configure-apps/file-schema/wcf/scopes.md b/docs/framework/configure-apps/file-schema/wcf/scopes.md index 7a2ce3fa03f..b4fb0c136d2 100644 --- a/docs/framework/configure-apps/file-schema/wcf/scopes.md +++ b/docs/framework/configure-apps/file-schema/wcf/scopes.md @@ -1,59 +1,67 @@ ---- -title: "<scopes> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "<スコープ>" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 9a0dd3ce-e383-4ac3-b7be-7d604388304a -caps.latest.revision: 2 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 2 ---- -# <scopes> +caps.latest.revision: "2" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 6b35696cbecb0badf397d6d48e7c97aae3d0232e +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <スコープ> クエリの実行中に、サービス エンドポイントのフィルター処理に使用できるカスタム スコープ URI を指定する構成要素のコレクションを含んでいます。 -## 構文 +\<システムです。ServiceModel > +\<ビヘイビアー > +\ +\<動作 > +\ +\<スコープ > -``` +## 構文 - - - - - - - - - - +```xml + + + + + + + + + + - ``` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 なし。 -### 子要素 +### 子要素 |属性|説明| -|--------|--------| -|[\](../../../../../docs/framework/configure-apps/file-schema/wcf/add-of-scopes.md)|サービス検索の一致条件に使用できるエンドポイントのスコープ情報を追加します。| +|---------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/wcf/add-of-scopes.md)|サービス検索の一致条件に使用できるエンドポイントのスコープ情報を追加します。| -### 親要素 +### 親要素 |要素|説明| -|--------|--------| -|[\](../../../../../docs/framework/configure-apps/file-schema/wcf/endpointdiscovery.md)|エンドポイントのさまざまな探索設定を指定します \(探索可能性、スコープ、メタデータに対するカスタム拡張など\)。| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/wcf/endpointdiscovery.md)|エンドポイントのさまざまな探索設定を指定します (探索可能性、スコープ、メタデータに対するカスタム拡張など)。| -## 参照 - \ No newline at end of file +## 関連項目 + diff --git a/docs/framework/configure-apps/file-schema/wcf/system-servicemodel-activation.md b/docs/framework/configure-apps/file-schema/wcf/system-servicemodel-activation.md index 5f6d053d5b2..2c5d34b70b3 100644 --- a/docs/framework/configure-apps/file-schema/wcf/system-servicemodel-activation.md +++ b/docs/framework/configure-apps/file-schema/wcf/system-servicemodel-activation.md @@ -1,28 +1,31 @@ ---- -title: "<system.serviceModel.activation> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: '<system.serviceModel.activation>' +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: c0cae85f-56cb-4030-8807-6f96edff8d2d -caps.latest.revision: 9 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 9 ---- -# <system.serviceModel.activation> -この構成セクションは、SMSvcHost.exe ツールの構成設定を表します。 構成要素は、SMSvcHost.exe.config ファイルで構成できます。 特にここには、構成される必要があるコンピューター全体のすべての設定が含まれます。 +caps.latest.revision: "9" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 18376f3553bc0a39b82cb0f223081c09a674e062 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <system.serviceModel.activation> +この構成セクションは、SMSvcHost.exe ツールの構成設定を表します。 構成要素は、SMSvcHost.exe.config ファイルで構成できます。 特にここには、構成される必要があるコンピューター全体のすべての設定が含まれます。 -## サンプル構成ファイル - 次は、リスナー プロセス SMSvcHost.exe で使用されるサンプル構成ファイル \(SMSvcHost.exe.config\) です。 +## サンプル構成ファイル + 次は、リスナー プロセス SMSvcHost.exe で使用されるサンプル構成ファイル (SMSvcHost.exe.config) です。 -``` +```xml @@ -67,5 +70,5 @@ caps.handback.revision: 9 ``` -## 参照 - \ No newline at end of file +## 関連項目 + diff --git a/docs/framework/configure-apps/file-schema/windows-identity-foundation/certificatereference.md b/docs/framework/configure-apps/file-schema/windows-identity-foundation/certificatereference.md index ae38248f958..d84059e371d 100644 --- a/docs/framework/configure-apps/file-schema/windows-identity-foundation/certificatereference.md +++ b/docs/framework/configure-apps/file-schema/windows-identity-foundation/certificatereference.md @@ -1,62 +1,71 @@ ---- -title: "<certificateReference> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: '<certificateReference>' +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 2ac8bc14-e9f1-48fb-b662-f5991558fbe4 -caps.latest.revision: 4 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 4 ---- -# <certificateReference> -検索して、証明書ストアの X.509 証明書を検証するために使用する設定を指定します。 +caps.latest.revision: "4" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: c8acf4b6d6e6e8a0fcf7d73139a1d2c5ea03f063 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <certificateReference> +検索し、証明書ストアで X.509 証明書の検証に使用される設定を指定します。 -## 構文 + \ +\ +\ +\ -``` +## 構文 + +```xml -   -     -       -       -     -   + + + + + + ``` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 -|属性|Description| -|--------|-----------------| -|storeName|X.509 証明書ストアの名前。 既定値は「私」。 省略可能です。| -|storeLocation|A 、X.509 証明書ストアの場所を指定する値。 既定値は、"LocalMachine"です。 省略可能です。| -|x509FindType| 、実行する検索の種類を指定する値。 既定値は"FindBySubjectDistinguishedName"です。 省略可能です。| -|findValue|X.509 証明書ストアで検索する値。 省略可能です。| -|isChainIncluded|証明書チェーンを使用して検証を実行するかどうかを指定します。 既定値は"true;"です。 検証は、証明書チェーンを使用して実行されます。 省略可能です。| +|属性|説明| +|---------------|-----------------| +|storeName|X.509 証明書ストアの名前。 既定値は"My"です。 省略可能です。| +|storeLocation|A X.509 証明書ストアの場所を指定する値。 既定値は、"LocalMachine"です。 省略可能です。| +|x509FindType|を実行する検索の種類を指定する値。 既定値は、「findbysubjectdistinguishedname です」です。 省略可能です。| +|findValue|X.509 証明書ストアで検索する値。 省略可能です。| +|isChainIncluded|証明書チェーンを使用して検証を実行するかどうかを指定します。 既定値は"true"です。検証は、証明書チェーンを使用して実行されます。 省略可能です。| -### 子要素 +### 子要素 なし -### 親要素 +### 親要素 -|要素|Description| -|--------|-----------------| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/servicecertificate.md)|暗号化し、トークンを復号化するために使用する証明書を構成します。| +|要素|説明| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/servicecertificate.md)|暗号化し、トークン暗号化解除に使用される証明書を構成します。| -## 解説 - ``要素を探し、証明書ストアの X.509 証明書を検証するために使用する設定を指定します。 子要素として指定されると、 ``要素は、場所と検証の設定を暗号化し、トークンを復号化に使用される X.509 証明書の指定します。 ``要素で表される、 クラス。 \ No newline at end of file +## コメント + ``要素を検索し、証明書ストアで X.509 証明書の検証に使用される設定を指定します。 子要素として指定した場合、``の暗号化し、トークン暗号化解除に使用される X.509 証明書の場所と検証の設定を指定します。 ``要素として表されます、クラスです。 diff --git a/docs/framework/configure-apps/file-schema/windows-identity-foundation/claimsauthenticationmanager.md b/docs/framework/configure-apps/file-schema/windows-identity-foundation/claimsauthenticationmanager.md index 2e4f86c3931..9e5ce6aa4c8 100644 --- a/docs/framework/configure-apps/file-schema/windows-identity-foundation/claimsauthenticationmanager.md +++ b/docs/framework/configure-apps/file-schema/windows-identity-foundation/claimsauthenticationmanager.md @@ -1,64 +1,72 @@ ---- -title: "<claimsAuthenticationManager> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: '<claimsAuthenticationManager>' +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 6d30a450-6d13-4671-81a8-77e0204500c5 -caps.latest.revision: 6 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 5 ---- -# <claimsAuthenticationManager> -入力受取所の要求認証マネージャーを登録します。 +caps.latest.revision: "6" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: 48e5be23b196a24a9d3e2a1dc4639d8ca9823660 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <claimsAuthenticationManager> +入力方向の要求の要求認証マネージャーに登録します。 -## 構文 + \ +\ +\ -``` +## 構文 + +```xml -   -     -       -     -   + + + + + ``` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 -|属性|Description| -|--------|-----------------| -|type| のクラスから派生したカスタム型を指定します。 `type` の属性を指定する方法の詳細については、 " " を参照してください。 [Custom Type References](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/index.md#BKMK_CustomTypeReferencess)| +|属性|説明| +|---------------|-----------------| +|型|派生するカスタム型を指定します、クラスです。 指定する方法について、`type`属性 [カスタム型の参照] を参照してください。| -### 子要素 - `type` の属性がない場合、または `type` の属性参照 のクラス、 `` の要素には子要素がありません; ただし、 から派生したクラスは、子構成要素を定義できます。 +### 子要素 + ある場合ありません`type`属性、または、`type`属性参照、クラス、``要素が子要素を受け取らないです。 ただし、から派生したクラス子の構成要素を定義できます。 -### 親要素 +### 親要素 -|要素|Description| -|--------|-----------------| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/identityconfiguration.md)|サービス レベルの ID の設定を指定します。| +|要素|説明| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/identityconfiguration.md)|サービス レベルの id 設定を指定します。| -## 解説 - のクラスにより提供される既定の動作は、入力がエコーされます。 `type` の属性が指定されていない場合、または `type` の属性が のクラスを指定する場合は、 `` の要素には子要素がありません。 カスタム動作を実行するに クラスから派生した型を登録するに `type` の属性を指定できます。 派生クラスは `` 要素の子要素を使用してこれらの要素を処理する メソッドのオーバーライドにより構成をサポートできます。 子要素に定義されたスキーマは、クラスのデザイナーがあります。 +## コメント + によって提供される既定の動作、クラスには、入力方向の要求がエコーされます。 ない場合は`type`属性が指定されて場合、または、`type`属性を指定、クラス、``要素は子要素を取りません。 指定することができます、`type`から派生した型を登録する属性、カスタム動作を実装するクラス。 派生クラスの子要素から構成をサポートできる、``要素をオーバーライドすることで、これらの要素を処理するメソッド。 子要素に定義されたスキーマは、クラスの設計者の責任です。 - `` の要素設定 のプロパティ。 + ``要素セット、プロパティです。 -## 使用例 +## 例 -``` +```xml - + -``` \ No newline at end of file +``` diff --git a/docs/framework/configure-apps/file-schema/windows-identity-foundation/claimtyperequired.md b/docs/framework/configure-apps/file-schema/windows-identity-foundation/claimtyperequired.md index 918b85bdba6..f3d263056e4 100644 --- a/docs/framework/configure-apps/file-schema/windows-identity-foundation/claimtyperequired.md +++ b/docs/framework/configure-apps/file-schema/windows-identity-foundation/claimtyperequired.md @@ -1,48 +1,56 @@ ---- -title: "<claimTypeRequired> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: '<claimTypeRequired>' +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: c469d71f-6c77-4a24-97aa-53efa126ceef -caps.latest.revision: 5 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 5 ---- -# <claimTypeRequired> -入力方向のセキュリティ トークンに必要なクレームのセットを指定します。 - -## 構文 - -``` +caps.latest.revision: "5" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: 89d42cba78eb9758d8b3491fd1bd3b25ef168f9c +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <claimTypeRequired> +必要な受信セキュリティ トークンのクレームのセットを指定します。 + + \ +\ +\ + +## 構文 + +```xml -   -     -     -   + + + + ``` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 なし -### 子要素 +### 子要素 -|要素|Description| -|--------|-----------------| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/claimtype.md)|1 つのオプションまたは必須の請求の入力方向のセキュリティ トークンを指定します。| +|要素|説明| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/claimtype.md)|受信セキュリティ トークンの 1 つの省略可能または必須のクレームを指定します。| -### 親要素 +### 親要素 -|要素|Description| -|--------|-----------------| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/identityconfiguration.md)|サービス ・ レベルの id の設定を指定します。| \ No newline at end of file +|要素|説明| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/identityconfiguration.md)|サービス レベルの id 設定を指定します。| diff --git a/docs/framework/configure-apps/file-schema/windows-identity-foundation/nameclaimtype.md b/docs/framework/configure-apps/file-schema/windows-identity-foundation/nameclaimtype.md index 4775df7ecc7..f5fb5f6032e 100644 --- a/docs/framework/configure-apps/file-schema/windows-identity-foundation/nameclaimtype.md +++ b/docs/framework/configure-apps/file-schema/windows-identity-foundation/nameclaimtype.md @@ -1,64 +1,75 @@ ---- -title: "<nameClaimType> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: '<nameClaimType>' +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 17514d95-f0f5-4789-8e28-346640dc227c -caps.latest.revision: 4 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 4 ---- -# <nameClaimType> - のプロパティを指定する要求タイプを設定します。 要求タイプがこのトークン ハンドラーの 方法によって返された のオブジェクト コレクションの の検索に使用されます。 一致の値は、たとえば、このハンドラーから生成される の名前設定されます。 +caps.latest.revision: "4" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: e910333084aae9e47153cfe3ee4b5cd943a37f71 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <nameClaimType> +指定するクレームの種類を設定、プロパティです。 要求の種類がの検索に使用される、のコレクションでによって返されるオブジェクト、このトークン ハンドラーのメソッドです。 一致する要求の値がの名前として設定し、このトークン ハンドラーから生成します。 -## 構文 + \ +\ +\ +\ +\ +\ -``` +## 構文 + +```xml -   -     -       -         -           -           -         -       -     -   + + + + + + + + + + ``` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 |属性|説明| -|--------|--------| -|value| のプロパティに使用する要求タイプの要求を表す URI を指定する文字列。 必須。| +|---------------|-----------------| +|値|使用する要求の要求の種類を表す URI を指定する文字列、プロパティです。 必須です。| -### 子要素 +### 子要素 なし -### 親要素 +### 親要素 |要素|説明| -|--------|--------| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/samlsecuritytokenrequirement.md)|これらのクラスのいずれかの クラス、 クラス、または派生クラスにコンフィギュレーションを提供します。| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/samlsecuritytokenrequirement.md)|構成を提供、クラス、クラス、またはこれらのクラスのいずれかの派生クラス。| -## 解説 - のオブジェクトを構成から開始されるときに `` の要素セット のプロパティ。 +## コメント + ``要素セット、プロパティと、構成からオブジェクトを初期化します。 -## 使用例 +## 例 -``` +```xml @@ -66,5 +77,5 @@ caps.handback.revision: 4 ``` -## 参照 - \ No newline at end of file +## 関連項目 + diff --git a/docs/framework/configure-apps/file-schema/windows-identity-foundation/sessionsecuritytokencache.md b/docs/framework/configure-apps/file-schema/windows-identity-foundation/sessionsecuritytokencache.md index e060205190d..de8d4c29753 100644 --- a/docs/framework/configure-apps/file-schema/windows-identity-foundation/sessionsecuritytokencache.md +++ b/docs/framework/configure-apps/file-schema/windows-identity-foundation/sessionsecuritytokencache.md @@ -1,58 +1,67 @@ ---- -title: "<sessionSecurityTokenCache> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: '<sessionSecurityTokenCache>' +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: d43e676c-0153-485c-ab31-0257a2db7507 -caps.latest.revision: 8 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 7 ---- -# <sessionSecurityTokenCache> -セッション トークンをキャッシュ サービスとセキュリティ トークン ハンドラーのコレクションを登録します。 +caps.latest.revision: "8" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: a1d1af398073e15ce7f73b3359366df9e5629ac6 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <sessionSecurityTokenCache> +サービスまたはセキュリティ トークン ハンドラーはコレクションのセッション トークンのキャッシュに登録します。 -## 構文 + \ +\ +\<キャッシュ > +\ -``` +## 構文 + +```xml -   -     -       -       -     -   + + + + + + ``` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 -|属性|Description| -|--------|-----------------| -|type|派生した型はクラス。 ユーザー設定を指定する方法の詳細については`type`を参照してください[Custom Type References](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/index.md#BKMK_CustomTypeReferences)。| +|属性|説明| +|---------------|-----------------| +|型|派生する型、クラスです。| -### 子要素 +### 子要素 なし -### 親要素 +### 親要素 -|要素|Description| -|--------|-----------------| -|[\<キャッシュ\>](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/caches.md)|サービス、セキュリティ トークン ハンドラーのコレクションを使用して、キャッシュを登録します。| +|要素|説明| +|-------------|-----------------| +|[\<キャッシュ >](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/caches.md)|サービスまたはセキュリティ トークン ハンドラーのコレクションによって使用されるキャッシュに登録します。| -## 使用例 - 次の XML は、セッションのセキュリティ トークンを保持して、カスタム キャッシュの構成を示しています \(\)。 構成から取得されます、 `ClaimsAwareWebFarm`サンプル。 このサンプルの詳細についてを参照してください[WIF コード サンプル インデックス](../../../../../docs/framework/security/wif-code-sample-index.md)。 +## 例 + 次の XML は、セッション セキュリティ トークンを保持するためのカスタム キャッシュの構成を示します ()。 構成がから取得した、`ClaimsAwareWebFarm`サンプルです。 このサンプルの詳細については、次を参照してください。 [WIF コード サンプル インデックス](../../../../../docs/framework/security/wif-code-sample-index.md)です。 -``` +```xml @@ -61,5 +70,5 @@ caps.handback.revision: 7 ``` -## 参照 - \ No newline at end of file +## 関連項目 + diff --git a/docs/framework/configure-apps/file-schema/windows-identity-foundation/sessiontokenrequirement.md b/docs/framework/configure-apps/file-schema/windows-identity-foundation/sessiontokenrequirement.md index 07693dcc1e9..ba0d1a8769c 100644 --- a/docs/framework/configure-apps/file-schema/windows-identity-foundation/sessiontokenrequirement.md +++ b/docs/framework/configure-apps/file-schema/windows-identity-foundation/sessiontokenrequirement.md @@ -1,60 +1,70 @@ ---- -title: "<sessionTokenRequirement> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: '<sessionTokenRequirement>' +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 496a1735-cbb7-49d5-a6aa-dd5550462073 -caps.latest.revision: 3 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 3 ---- -# <sessionTokenRequirement> - クラスまたは派生クラスにコンフィギュレーションを提供します。 +caps.latest.revision: "3" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: 8b729f588d2195992b231661f7bb718240141fdd +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <sessionTokenRequirement> +構成を提供、クラスまたは派生クラス。 -## 構文 + \ +\ +\ +\ +\ -``` +## 構文 + +```xml -   -     -       -         -         -       -     -   + + + + + + + + ``` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 |属性|説明| -|--------|--------| -|有効期間|セッションのトークンの有効期間を指定します。| +|---------------|-----------------| +|有効期間|セッション トークンの有効期間を指定します。| -### 子要素 +### 子要素 なし -### 親要素 +### 親要素 |要素|説明| -|--------|--------| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/add.md)|たとえば、ハンドラーのグループに指定セキュリティのトークン ハンドラーを追加します。| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/add.md)|トークン ハンドラー コレクションに指定されたセキュリティ トークン ハンドラーを追加します。| -## 使用例 +## 例 -``` +```xml -``` \ No newline at end of file +``` diff --git a/docs/framework/configure-apps/file-schema/windows-identity-foundation/usernamesecuritytokenhandlerrequirement.md b/docs/framework/configure-apps/file-schema/windows-identity-foundation/usernamesecuritytokenhandlerrequirement.md index 796fc815fd8..d7358e13490 100644 --- a/docs/framework/configure-apps/file-schema/windows-identity-foundation/usernamesecuritytokenhandlerrequirement.md +++ b/docs/framework/configure-apps/file-schema/windows-identity-foundation/usernamesecuritytokenhandlerrequirement.md @@ -1,63 +1,73 @@ ---- -title: "<userNameSecurityTokenHandlerRequirement> | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: '<userNameSecurityTokenHandlerRequirement>' +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 6ec3bac1-b014-49ae-843c-c54518cb709a -caps.latest.revision: 4 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 4 ---- -# <userNameSecurityTokenHandlerRequirement> - クラスまたは派生クラスにコンフィギュレーションを提供します。 +caps.latest.revision: "4" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: 4ffe9764eb730be4859fb66ae2f0cc845c9404e8 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# <userNameSecurityTokenHandlerRequirement> +構成を提供、クラスまたは派生クラス。 -## 構文 + \ +\ +\ +\ +\ -``` +## 構文 + +```xml -   -     -       -         -         -       -     -   + + + + + + + + ``` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 |属性|説明| -|--------|--------| -|membershipProviderName|セキュリティのトークン ハンドラーで使用される を指定します。| +|---------------|-----------------| +|membershipProviderName|指定します、セキュリティ トークン ハンドラーを使用する必要があります。| -### 子要素 +### 子要素 なし -### 親要素 +### 親要素 |要素|説明| -|--------|--------| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/add.md)|たとえば、ハンドラーのグループに指定セキュリティのトークン ハンドラーを追加します。| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-identity-foundation/add.md)|トークン ハンドラー コレクションに指定されたセキュリティ トークン ハンドラーを追加します。| -## 解説 - のオブジェクトを構成から開始されるときに `` の要素セット のプロパティ。 +## コメント + ``要素セット、プロパティと、構成からオブジェクトを初期化します。 -## 使用例 +## 例 -``` +```xml ](../../../../../docs/framework/configure-apps/file-schema/wcf/endpoint-element.md) 要素の **behaviorConfiguration** 属性を使用して、この名前で各動作にリンクできます。 これにより、設定を再定義することなく、エンドポイント間で共通の動作構成を共有できます。 +caps.latest.revision: "3" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 81dfde9a4b75caeea263cc0809f450cbc0c9a5e9 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# ワークフローの <serviceBehaviors> の <behavior> +**動作**要素には、サービスの動作の設定のコレクションが含まれています。 各動作のインデックスを作成してその**名前**です。 サービスを使用して、この名前を使用して各動作にリンクできます、 **behaviorConfiguration**の属性、 [\<エンドポイント >](../../../../../docs/framework/configure-apps/file-schema/wcf/endpoint-element.md)要素。 これにより、設定を再定義することなく、エンドポイント間で共通の動作構成を共有できます。 -## 構文 +\<システムです。ServiceModel > +\<ビヘイビアー > +\ +\<動作 > -``` +## 構文 +```xml - - - - - - - - - - - + + + + + + + + + + + ``` -## 属性および要素 +## 属性および要素 以降のセクションでは、属性、子要素、および親要素について説明します。 -### 属性 +### 属性 |属性|説明| -|--------|--------| -|name|動作の構成名を含む一意の文字列。 この値は、要素の識別文字列として機能するため、一意のユーザー定義の文字列である必要があります。| +|---------------|-----------------| +|name|動作の構成名を含む一意の文字列。 この値は、要素の識別文字列として機能するため、一意のユーザー定義の文字列である必要があります。| -### 子要素 +### 子要素 |要素|説明| -|--------|--------| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/bufferreceive.md)|サービスが、バッファーされた受信処理を使用するためのサービス動作。これにより、ワークフロー サービスは、順番を無視したメッセージを処理できます。| -|[\](../../../../../docs/framework/configure-apps/file-schema/wcf/routing-of-servicebehavior.md)| を使用した、サービスによる ETW 追跡の利用を可能にするサービス動作。| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/sendmessagechannelcache.md)|キャッシュの共有レベルのカスタマイズや、チャネル ファクトリ キャッシュの設定を可能にするほか、Send メッセージング アクティビティを使用してサービス エンドポイントにメッセージを送信するワークフローのチャネル キャッシュの設定も可能にするサービス動作。| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/sqlworkflowinstancestore.md)|ワークフロー サービス インスタンスの状態情報の永続化を SQL Server 2005 または SQL Server 2008 データベースでサポートする 機能を構成するためのサービス動作。| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/workflowidle.md)|アイドル状態のワークフロー インスタンスのアンロードおよび永続化のタイミングを制御するサービス動作。| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/workflowinstancemanagement.md)|ワークフロー インスタンスの実行方法を制御する設定を指定するためのサービス動作。これには、永続する未処理の例外動作やアイドル状態の動作が含まれます。| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/workflowunhandledexception.md)|ワークフロー サービス内で未処理の例外が発生した場合のアクションを指定するためのサービス動作。| +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/bufferreceive.md)|サービスが、バッファーされた受信処理を使用するためのサービス動作。これにより、ワークフロー サービスは、順番を無視したメッセージを処理できます。| +|[\<ルーティング >](../../../../../docs/framework/configure-apps/file-schema/wcf/routing-of-servicebehavior.md)|により、サービスを使用して ETW の追跡を使用するサービスの動作、です。| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/sendmessagechannelcache.md)|キャッシュ共有レベル、チャネル ファクトリ キャッシュの設定および送信メッセージング アクティビティを使用してサービス エンドポイントにメッセージを送信するワークフローのチャネル キャッシュの設定のカスタマイズをできるサービス動作です。| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/sqlworkflowinstancestore.md)|サービスの動作を構成することができます、機能で、SQL Server 2005 または SQL Server 2008 データベースにワークフロー サービス インスタンスの永続化の状態情報をサポートしています。| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/workflowidle.md)|アイドル状態のワークフロー インスタンスのアンロードおよび永続化のタイミングを制御するサービス動作。| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/workflowinstancemanagement.md)|ワークフロー インスタンスの実行方法を制御する設定を指定するためのサービス動作。これには、永続する未処理の例外動作やアイドル状態の動作が含まれます。| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/workflowunhandledexception.md)|ワークフロー サービス内で未処理の例外が発生した場合のアクションを指定するためのサービス動作。| -### 親要素 +### 親要素 |要素|説明| -|--------|--------| -|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/servicebehaviors-of-workflow.md)|サービス動作要素のコレクション。| \ No newline at end of file +|-------------|-----------------| +|[\](../../../../../docs/framework/configure-apps/file-schema/windows-workflow-foundation/servicebehaviors-of-workflow.md)|サービス動作要素のコレクション。| diff --git a/docs/framework/data/adonet/ef/language-reference/between-entity-sql.md b/docs/framework/data/adonet/ef/language-reference/between-entity-sql.md index c3a24d41fa6..0a43fc637f1 100644 --- a/docs/framework/data/adonet/ef/language-reference/between-entity-sql.md +++ b/docs/framework/data/adonet/ef/language-reference/between-entity-sql.md @@ -1,44 +1,42 @@ ---- -title: "BETWEEN (Entity SQL) | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" -dev_langs: - - "VB" - - "CSharp" - - "C++" +--- +title: BETWEEN (Entity SQL) +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 4dcdd754-ae01-4e78-bf28-8a117fb2b73e -caps.latest.revision: 3 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 3 ---- -# BETWEEN (Entity SQL) -式の結果が指定の範囲内の値になるかどうかを判断します。[!INCLUDE[esql](../../../../../../includes/esql-md.md)] の BETWEEN 式は、Transact\-SQL の BETWEEN 式と同じ効果を持ちます。 - -## 構文 +caps.latest.revision: "3" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: 6ab5c08dad5f11d968eec4efa51ff225d3cfd0fa +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# BETWEEN (Entity SQL) +式の結果が指定の範囲内の値になるかどうかを判断します。 [!INCLUDE[esql](../../../../../../includes/esql-md.md)] BETWEEN 式は、TRANSACT-SQL の BETWEEN 式と同じ機能です。 + +## 構文 ``` - -expression [ NOT ] BETWEEN begin_expression AND end_expression +expression [ NOT ] BETWEEN begin_expression AND end_expression ``` -## 引数 +## 引数 `expression` - `begin_expression` と `end_expression` で定義される範囲についてテストするための任意の有効な式。`expression` は、`begin_expression` と `end_expression` の両方と同じ型にする必要があります。 + `begin_expression` と `end_expression` で定義される範囲についてテストするための任意の有効な式。 `expression` は、`begin_expression` と `end_expression` の両方と同じ型にする必要があります。 `begin_expression` - 任意の有効な式。`begin_expression` は、`expression` と `end_expression` の両方と同じ型にする必要があります。`begin_expression` は、`end_expression` 未満でなければなりません。それ以外の場合、戻り値は否定されます。 + 任意の有効な式。 `begin_expression` は、`expression` と `end_expression` の両方と同じ型にする必要があります。 `begin_expression` は、`end_expression` 未満でなければなりません。それ以外の場合、戻り値は否定されます。 `end_expression` - 任意の有効な式。`end_expression` は、`expression` と `begin_expression` の両方と同じ型にする必要があります。 + 任意の有効な式。 `end_expression` は、`expression` と `begin_expression` の両方と同じ型にする必要があります。 NOT BETWEEN の結果を否定することを指定します。 @@ -46,20 +44,20 @@ expression [ NOT ] BETWEEN begin_expression AND end_expression AND `expression` と `begin_expression` で表される範囲内で `end_expression` をテストする必要があることを示すプレースホルダーです。 -## 戻り値 - `true` が、`expression` と `begin_expression` で指定される範囲内にある場合は `end_expression`。それ以外の場合は `false`。`null` が `expression` であるか、`null` または `begin_expression` が `end_expression` である場合は、`null` が返されます。 +## 戻り値 + `true` が、`expression` と `begin_expression` で指定される範囲内にある場合は `end_expression`。それ以外の場合は `false`。 `null` が `expression` であるか、`null` または `begin_expression` が `end_expression` である場合は、`null` が返されます。 -## 解説 - 両端を除いた範囲を指定するには、BETWEEN の代わりに、より大きい \(\>\) とより小さい \(\<\) を意味する演算子を使用します。 +## コメント + 両端を除いた範囲を指定するには、BETWEEN の代わりに、より大きい (>) とより小さい (<) を意味する演算子を使用します。 -## 使用例 +## 例 次の Entity SQL クエリでは、BETWEEN 演算子を使用して、式の結果が指定の範囲内の値になるかどうかを調べます。 このクエリは、AdventureWorks Sales Model に基づいています。 このクエリをコンパイルして実行するには、次の手順を実行します。 -1. 「[StructuralType 結果を返すクエリの実行方法](../../../../../../docs/framework/data/adonet/ef/how-to-execute-a-query-that-returns-structuraltype-results.md)」の手順に従います。 +1. 「 [How to: Execute a Query that Returns StructuralType Results](../../../../../../docs/framework/data/adonet/ef/how-to-execute-a-query-that-returns-structuraltype-results.md)」の手順に従います。 2. 次のクエリを引数として `ExecuteStructuralTypeQuery` メソッドに渡します。 [!code-csharp[DP EntityServices Concepts 2#BETWEEN](../../../../../../samples/snippets/csharp/VS_Snippets_Data/dp entityservices concepts 2/cs/entitysql.cs#between)] -## 参照 - [Entity SQL リファレンス](../../../../../../docs/framework/data/adonet/ef/language-reference/entity-sql-reference.md) \ No newline at end of file +## 関連項目 + [Entity SQL リファレンス](../../../../../../docs/framework/data/adonet/ef/language-reference/entity-sql-reference.md) diff --git a/docs/framework/data/adonet/ef/language-reference/cast-entity-sql.md b/docs/framework/data/adonet/ef/language-reference/cast-entity-sql.md index 6db3a91a677..90debc2bfd4 100644 --- a/docs/framework/data/adonet/ef/language-reference/cast-entity-sql.md +++ b/docs/framework/data/adonet/ef/language-reference/cast-entity-sql.md @@ -1,55 +1,53 @@ ---- -title: "CAST (Entity SQL) | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" -dev_langs: - - "VB" - - "CSharp" - - "C++" +--- +title: CAST (Entity SQL) +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 07b6d750-dfd4-48a9-b86c-3badcbba6f70 -caps.latest.revision: 4 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 2 ---- -# CAST (Entity SQL) +caps.latest.revision: "4" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: 353398f834aff5cefb3aed91899ce042df9df60a +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# CAST (Entity SQL) あるデータ型の式を別のデータ型に変換します。 -## 構文 +## 構文 ``` - -CAST ( expression AS data_type) +CAST ( expression AS data_type ) ``` -## 引数 +## 引数 `expression` - `data_type` に変換できる任意の有効な式。 + `data_type`に変換できる任意の有効な式。 `data_type` - 対象システムで提供されるデータ型。 プリミティブ \(スカラー\) 型でなければなりません。 使用される `data_type` は、クエリのスペースによって異なります。 クエリが で実行される場合、データ型は概念モデルで定義された型です。 詳細については、「[CSDL 仕様](../../../../../../docs/framework/data/adonet/ef/language-reference/csdl-specification.md)」を参照してください。 クエリが で実行される場合、データ型は共通言語ランタイム \(CLR\) 型です。 + 対象システムで提供されるデータ型。 プリミティブ (スカラー) 型でなければなりません。 使用される `data_type` は、クエリのスペースによって異なります。 クエリが で実行される場合、データ型は概念モデルで定義された型です。 詳細については、「 [CSDL Specification](../../../../../../docs/framework/data/adonet/ef/language-reference/csdl-specification.md)」を参照してください。 クエリが で実行される場合、データ型は共通言語ランタイム (CLR) 型です。 -## 戻り値 - `data_type` と同じ値が返されます。 +## 戻り値 + `data_type`と同じ値が返されます。 -## 解説 +## コメント キャスト式のセマンティックスは [!INCLUDE[tsql](../../../../../../includes/tsql-md.md)] CONVERT 式と似ています。 キャスト式は、ある型の値を別の型の値に変換する場合に使用します。 ``` CAST( e as T ) ``` - e が S 型で、S を T に変換できる場合、上記の式は有効なキャスト式です。 T はプリミティブ \(スカラー\) 型でなければなりません。 + e が S 型で、S を T に変換できる場合、上記の式は有効なキャスト式です。 T はプリミティブ (スカラー) 型でなければなりません。 - `Edm.Decimal` にキャストする場合は、オプションで精度と小数点以下桁数のファセットの値を指定できます。 明示的に指定しない場合、精度と小数点以下桁数の既定値はそれぞれ 18 と 0 です。 具体的には、`Decimal` で次のオーバーロードがサポートされています。 + `Edm.Decimal`にキャストする場合は、オプションで精度と小数点以下桁数のファセットの値を指定できます。 明示的に指定しない場合、精度と小数点以下桁数の既定値はそれぞれ 18 と 0 です。 具体的には、 `Decimal`で次のオーバーロードがサポートされています。 - `CAST( d as Edm.Decimal );` @@ -62,14 +60,14 @@ CAST( e as T ) > [!NOTE] > CAST はプリミティブ型と列挙メンバー型のみでサポートされています。 -## 使用例 +## 例 次の [!INCLUDE[esql](../../../../../../includes/esql-md.md)] クエリは CAST 演算子を使用して、あるデータ型の式を別のデータ型にキャストします。 このクエリは、AdventureWorks Sales Model に基づいています。 このクエリをコンパイルして実行するには、次の手順を実行します。 -1. 「[PrimitiveType 結果を返すクエリの実行方法](../../../../../../docs/framework/data/adonet/ef/how-to-execute-a-query-that-returns-primitivetype-results.md)」の手順に従います。 +1. 」の手順に従って[する方法: PrimitiveType 結果が返されますそのクエリを実行する](../../../../../../docs/framework/data/adonet/ef/how-to-execute-a-query-that-returns-primitivetype-results.md)です。 2. 次のクエリを引数として `ExecutePrimitiveTypeQuery` メソッドに渡します。 [!code-csharp[DP EntityServices Concepts 2#CAST](../../../../../../samples/snippets/csharp/VS_Snippets_Data/dp entityservices concepts 2/cs/entitysql.cs#cast)] -## 参照 - [Entity SQL リファレンス](../../../../../../docs/framework/data/adonet/ef/language-reference/entity-sql-reference.md) \ No newline at end of file +## 関連項目 + [Entity SQL リファレンス](../../../../../../docs/framework/data/adonet/ef/language-reference/entity-sql-reference.md) diff --git a/docs/framework/data/adonet/ef/language-reference/divide-entity-sql.md b/docs/framework/data/adonet/ef/language-reference/divide-entity-sql.md index 398fb598f94..6261f15e0c0 100644 --- a/docs/framework/data/adonet/ef/language-reference/divide-entity-sql.md +++ b/docs/framework/data/adonet/ef/language-reference/divide-entity-sql.md @@ -1,56 +1,51 @@ ---- -title: "/ (除算) (Entity SQL) | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" -dev_langs: - - "VB" - - "CSharp" - - "C++" +--- +title: "- (除算)(Entity SQL)" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article ms.assetid: ef48c368-f3ed-4275-8ada-4e9649781262 -caps.latest.revision: 3 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 3 ---- -# / (除算) (Entity SQL) +caps.latest.revision: "3" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: 0f215e12f9f86ee08679bdb2e2638c0c8df35ea4 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# / (除算) (Entity SQL) 1 つの値を別の値で除算します。 -## 構文 +## 構文 ``` - -dividend -/ -divisor - +dividend / divisor ``` -## 引数 +## 引数 `dividend` - 除算する数値式。`dividend` は、任意の数値データ型の有効な式です。 + 除算する数値式。 `dividend` は、任意の数値データ型の有効な式です。 `divisor` - 被除数を除算する数値式。`divisor` は、任意の数値データ型の有効な式です。 + 被除数を除算する数値式。 `divisor` は、任意の数値データ型の有効な式です。 -## 戻り値の型 - 2 つの引数の暗黙の型の昇格の結果であるデータ型。 暗黙の型の昇格について詳しくは、「[型システム](../../../../../../docs/framework/data/adonet/ef/language-reference/type-system-entity-sql.md)」をご覧ください。 +## 戻り値の型 + 2 つの引数の暗黙の型の昇格の結果であるデータ型。 暗黙的な型の昇格の詳細については、次を参照してください。[型システム](../../../../../../docs/framework/data/adonet/ef/language-reference/type-system-entity-sql.md)です。 -## 使用例 - 次の Entity SQL クエリでは、\/ 算術演算子を使用して 2 つの数値の間で除算をします。 このクエリは、AdventureWorks Sales Model に基づいています。 このクエリをコンパイルして実行するには、次の手順を実行します。 +## 例 + 次の Entity SQL クエリでは、/ 算術演算子を使用して 2 つの数値の間で除算をします。 このクエリは、AdventureWorks Sales Model に基づいています。 このクエリをコンパイルして実行するには、次の手順を実行します。 -1. 「[StructuralType 結果を返すクエリの実行方法](../../../../../../docs/framework/data/adonet/ef/how-to-execute-a-query-that-returns-structuraltype-results.md)」の手順に従います。 +1. 「 [How to: Execute a Query that Returns StructuralType Results](../../../../../../docs/framework/data/adonet/ef/how-to-execute-a-query-that-returns-structuraltype-results.md)」の手順に従います。 2. 次のクエリを引数として `ExecuteStructuralTypeQuery` メソッドに渡します。 [!code-csharp[DP EntityServices Concepts 2#DIVIDE](../../../../../../samples/snippets/csharp/VS_Snippets_Data/dp entityservices concepts 2/cs/entitysql.cs#divide)] -## 参照 - [Entity SQL リファレンス](../../../../../../docs/framework/data/adonet/ef/language-reference/entity-sql-reference.md) \ No newline at end of file +## 関連項目 + [Entity SQL リファレンス](../../../../../../docs/framework/data/adonet/ef/language-reference/entity-sql-reference.md) diff --git a/docs/framework/data/adonet/ef/language-reference/grouppartition-entity-sql.md b/docs/framework/data/adonet/ef/language-reference/grouppartition-entity-sql.md index 00abacd8213..7c32d5d41a8 100644 --- a/docs/framework/data/adonet/ef/language-reference/grouppartition-entity-sql.md +++ b/docs/framework/data/adonet/ef/language-reference/grouppartition-entity-sql.md @@ -1,36 +1,38 @@ ---- -title: "GROUPPARTITION (Entity SQL) | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: GROUPPARTITION (Entity SQL) +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article ms.assetid: d0482e9b-086c-451c-9dfa-ccb024a9efb6 -caps.latest.revision: 3 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 3 ---- -# GROUPPARTITION (Entity SQL) -引数値のコレクションを返します。この値は、集計が関連する現在のグループ パーティションから投影されたものです。`GroupPartition` 集計は、グループベースの集計であり、コレクションベースの形式ではありません。 - -## 構文 +caps.latest.revision: "3" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: ceadd193784a2c1936b0dcc2d634ae87b513e57e +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# GROUPPARTITION (Entity SQL) +引数値のコレクションを返します。この値は、集計が関連する現在のグループ パーティションから投影されたものです。 `GroupPartition` 集計は、グループベースの集計であり、コレクションベースの形式ではありません。 + +## 構文 ``` - GROUPPARTITION( [ALL|DISTINCT] expression ) ``` -## 引数 +## 引数 `expression` - 任意のブール型 \([!INCLUDE[esql](../../../../../../includes/esql-md.md)]\) の式を指定します。 + 任意のブール型 ( [!INCLUDE[esql](../../../../../../includes/esql-md.md)] ) の式を指定します。 -## 解説 +## コメント 次のクエリでは、製品の一覧と、製品ごとの注文明細の数量のコレクションが生成されます。 ``` @@ -77,7 +79,7 @@ select groupkey, GroupPartition({42}) from {1,2,3} as a inner join {4,5,6} as b select groupkey, GroupPartition(b > a) from {1,2,3} as a inner join {4,5,6} as b on true group by a as groupkey ``` -## 使用例 - 次の例では、GROUPPARTITION 句を GROUP BY 句と共に使用する方法を示します。 GROUP BY 句は `SalesOrderHeader` によって `Contact` エンティティをグループ化します。 続いて GROUPPARTITION 句は、各グループの `TotalDue` プロパティを投影し、その結果、10 進数のコレクションが生成されます。 +## 例 + 次の例では、GROUPPARTITION 句を GROUP BY 句と共に使用する方法を示します。 GROUP BY 句は `SalesOrderHeader` によって `Contact`エンティティをグループ化します。 続いて GROUPPARTITION 句は、各グループの `TotalDue` プロパティを投影し、その結果、10 進数のコレクションが生成されます。 - [!code-csharp[DP EntityServices Concepts 2#Collection_GroupPartition](../../../../../../samples/snippets/csharp/VS_Snippets_Data/dp entityservices concepts 2/cs/entitysql.cs#collection_grouppartition)] \ No newline at end of file + [!code-csharp[DP EntityServices Concepts 2#Collection_GroupPartition](../../../../../../samples/snippets/csharp/VS_Snippets_Data/dp entityservices concepts 2/cs/entitysql.cs#collection_grouppartition)] diff --git a/docs/framework/data/adonet/ef/language-reference/operator-precedence-entity-sql.md b/docs/framework/data/adonet/ef/language-reference/operator-precedence-entity-sql.md index 2a98049642f..316ad692f17 100644 --- a/docs/framework/data/adonet/ef/language-reference/operator-precedence-entity-sql.md +++ b/docs/framework/data/adonet/ef/language-reference/operator-precedence-entity-sql.md @@ -1,44 +1,43 @@ ---- -title: "演算子の優先順位 (Entity SQL) | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" -dev_langs: - - "VB" - - "CSharp" - - "C++" +--- +title: "演算子の優先順位 (Entity SQL)" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article ms.assetid: e92e4ca5-2889-4266-9625-47f0eb01a948 -caps.latest.revision: 2 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 2 ---- -# 演算子の優先順位 (Entity SQL) -[!INCLUDE[esql](../../../../../../includes/esql-md.md)] クエリに複数の演算子がある場合は、演算子の優先順位によって、操作の実行順序が決まります。 実行される順序により、クエリ結果の値は大きく変わります。 +caps.latest.revision: "2" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: 484eedffeaffb625cd43352dadedb8c99fbc65ed +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# 演算子の優先順位 (Entity SQL) +ときに、[!INCLUDE[esql](../../../../../../includes/esql-md.md)]クエリが複数の演算子、演算子の優先順位は、操作が実行される順序を決定します。 実行される順序により、クエリ結果の値は大きく変わります。 - 演算子には、次の表に示す優先順位レベルが定義されています。 優先順位が高い演算子は、優先順位が低い演算子よりも前に評価されます。 + 演算子には、次の表に示す優先順位レベルが定義されています。 優先順位が高い演算子は、優先順位が低い演算子よりも前に評価されます。 |レベル|演算の種類|演算子| -|---------|-----------|---------| -|1|1 次式|`. , [] ()`| -|2|単項|`! not`| -|3|乗法|`* / %`| -|4|加法|`+ -`| -|5|並べ替え|`< > <= >=`| -|6|等価比較|`= != <>`| -|7|条件 AND|`and &&`| -|8|条件 OR|`or ||`| +|-----------|--------------------|--------------| +|1|1 次式|`. , [] ()`| +|2|単項|`! not`| +|3|乗法|`* / %`| +|4|加法|`+ -`| +|5|並べ替え|`< > <= >=`| +|6|等価比較|`= != <>`| +|7|条件 AND|`and &&`| +|8|条件 OR|`or ||`| - 式の中の 2 つの演算子が同じ優先順位レベルである場合は、クエリの中での位置に従って演算子は左から右へと評価されます。 たとえば、 `x+y-z` は `(x+y)-z` と評価されます。 + 式の中の 2 つの演算子が同じ優先順位レベルである場合は、クエリの中での位置に従って演算子は左から右へと評価されます。 たとえば、`x+y-z` は `(x+y)-z` と評価されます。 - クエリの中で演算子の定義済みの優先順位を無効にするには、かっこを使用します。 この場合、かっこ内のすべての演算が評価され、1 つの結果が作成されてから、かっこ外の演算子でこの結果が使用されます。 たとえば、`x+y*z` の場合、`y` と `z` の積に `x` が加算されますが、`(x+y)*z` の場合は、`x` と `y` の和に `z` が乗算されます。 + クエリの中で演算子の定義済みの優先順位を無効にするには、かっこを使用します。 この場合、かっこ内のすべての演算が評価され、1 つの結果が作成されてから、かっこ外の演算子でこの結果が使用されます。 たとえば、`x+y*z`乗算`y`によって`z`し、追加`x`が`(x+y)*z`追加`x`に`y`には、結果を乗算し、`z`です。 -## 参照 - [Entity SQL の概要](../../../../../../docs/framework/data/adonet/ef/language-reference/entity-sql-overview.md) \ No newline at end of file +## 関連項目 + [Entity SQL の概要](../../../../../../docs/framework/data/adonet/ef/language-reference/entity-sql-overview.md) diff --git a/docs/framework/data/adonet/ef/language-reference/query-expression-syntax-examples-navigating-relationships.md b/docs/framework/data/adonet/ef/language-reference/query-expression-syntax-examples-navigating-relationships.md index 1538b6ed557..ae2b74c225c 100644 --- a/docs/framework/data/adonet/ef/language-reference/query-expression-syntax-examples-navigating-relationships.md +++ b/docs/framework/data/adonet/ef/language-reference/query-expression-syntax-examples-navigating-relationships.md @@ -1,58 +1,60 @@ ---- -title: "クエリ式の構文例 : リレーションシップのナビゲーション | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" -dev_langs: - - "VB" - - "CSharp" - - "C++" +--- +title: "クエリ式の構文例: リレーションシップのナビゲーション" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb ms.assetid: 0d4a7f41-c758-4059-8f83-d2e9c2745593 -caps.latest.revision: 2 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 2 ---- -# クエリ式の構文例 : リレーションシップのナビゲーション -[!INCLUDE[adonet_ef](../../../../../../includes/adonet-ef-md.md)] のナビゲーション プロパティは、アソシエーションの末尾にあるエンティティを見つけるために使用できるショートカット プロパティです。 ナビゲーション プロパティを使用すると、ユーザーは、エンティティ間をナビゲートしたり、あるエンティティからアソシエーション セットを介して関連エンティティにナビゲートしたりできます。 このトピックでは、[!INCLUDE[linq_entities](../../../../../../includes/linq-entities-md.md)] クエリ内でナビゲーション プロパティを介してリレーションシップをナビゲートするためのクエリ式の構文例を示します。 +caps.latest.revision: "2" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: d86fa3aab55daff9c7a3724c93ad68be27a6908b +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# クエリ式の構文例: リレーションシップのナビゲーション +[!INCLUDE[adonet_ef](../../../../../../includes/adonet-ef-md.md)] のナビゲーション プロパティは、アソシエーションの末尾にあるエンティティを見つけるために使用できるショートカット プロパティです。 ナビゲーション プロパティを使用すると、ユーザーは、エンティティ間をナビゲートしたり、あるエンティティからアソシエーション セットを介して関連エンティティにナビゲートしたりできます。 このトピックでは、[!INCLUDE[linq_entities](../../../../../../includes/linq-entities-md.md)] クエリ内でナビゲーション プロパティを介してリレーションシップをナビゲートするためのクエリ式の構文例を示します。 これらの例で使用されている、AdventureWorks Sales Model は、AdventureWorks サンプル データベースの Contact、Address、Product、SalesOrderHeader、SalesOrderDetail の各テーブルから作成されています。 - このトピックの例には、次の `using`\/`Imports` ステートメントが使用されています。 + このトピックの例では、次を使用して`using` / `Imports`ステートメント。 - [!code-csharp[DP L2E Examples#ImportsUsing](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#importsusing)] + [!code-csharp[DP L2E Examples#ImportsUsing](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#importsusing)] [!code-vb[DP L2E Examples#ImportsUsing](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DP L2E Examples/VB/Module1.vb#importsusing)] -## 例 - 次の例では、 メソッドを使用して、姓が "Zhou" である連絡先のすべての連絡先 ID と、各連絡先の合計支払額の総計を取得します。 `Contact.SalesOrderHeader` ナビゲーション プロパティは、各連絡先の `SalesOrderHeader` オブジェクトのコレクションを取得するために使用されます。 `Sum` メソッドは、`Contact.SalesOrderHeader` ナビゲーション プロパティを使用して、それぞれの連絡先のすべての注文の合計支払額を合計します。 +## 例 + 次の例では、 メソッドを使用して、姓が "Zhou" である連絡先のすべての連絡先 ID と、各連絡先の合計支払額の総計を取得します。 `Contact.SalesOrderHeader` ナビゲーション プロパティは、各連絡先の `SalesOrderHeader` オブジェクトのコレクションを取得するために使用されます。 `Sum` メソッドは、`Contact.SalesOrderHeader` ナビゲーション プロパティを使用して、それぞれの連絡先のすべての注文の合計支払額を合計します。 - [!code-csharp[DP L2E Examples#SelectEachContactsOrders2](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#selecteachcontactsorders2)] + [!code-csharp[DP L2E Examples#SelectEachContactsOrders2](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#selecteachcontactsorders2)] [!code-vb[DP L2E Examples#SelectEachContactsOrders2](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DP L2E Examples/VB/Module1.vb#selecteachcontactsorders2)] -## 例 - 次の例では、姓が "Zhou" である連絡先のすべての注文を取得します。 `Contact.SalesOrderHeader` ナビゲーション プロパティは、各連絡先の `SalesOrderHeader` オブジェクトのコレクションを取得するために使用されます。 連絡先の名前と注文が匿名型で返されます。 +## 例 + 次の例では、姓が "Zhou" である連絡先のすべての注文を取得します。 `Contact.SalesOrderHeader` ナビゲーション プロパティは、各連絡先の `SalesOrderHeader` オブジェクトのコレクションを取得するために使用されます。 連絡先の名前と注文が匿名型で返されます。 - [!code-csharp[DP L2E Examples#SelectEachContactsOrders3](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#selecteachcontactsorders3)] + [!code-csharp[DP L2E Examples#SelectEachContactsOrders3](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#selecteachcontactsorders3)] [!code-vb[DP L2E Examples#SelectEachContactsOrders3](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DP L2E Examples/VB/Module1.vb#selecteachcontactsorders3)] -## 例 - 次の例では、`SalesOrderHeader.Address` ナビゲーション プロパティと `SalesOrderHeader.Contact` ナビゲーション プロパティを使用して、互いに関連付けられている `Address` オブジェクトと `Contact` オブジェクトのコレクションを取得します。 各注文の連絡先の姓、住所、販売注文番号、および Seattle 市に対する合計支払額が匿名型で返されます。 +## 例 + 次の例では、`SalesOrderHeader.Address` ナビゲーション プロパティと `SalesOrderHeader.Contact` ナビゲーション プロパティを使用して、互いに関連付けられている `Address` オブジェクトと `Contact` オブジェクトのコレクションを取得します。 各注文の連絡先の姓、住所、販売注文番号、および Seattle 市に対する合計支払額が匿名型で返されます。 - [!code-csharp[DP L2E Examples#GetOrderInfoThruRelationships](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#getorderinfothrurelationships)] + [!code-csharp[DP L2E Examples#GetOrderInfoThruRelationships](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#getorderinfothrurelationships)] [!code-vb[DP L2E Examples#GetOrderInfoThruRelationships](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DP L2E Examples/VB/Module1.vb#getorderinfothrurelationships)] -### 例 +### 例 次の例では、`Where` メソッドを使用して、2003 年 12 月 1 日以降に受けた注文を検索します。次に、`order.SalesOrderDetail` ナビゲーション プロパティを使用して、各注文の詳細を取得します。 - [!code-csharp[DP L2E Examples#WhereNavProperty](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#wherenavproperty)] + [!code-csharp[DP L2E Examples#WhereNavProperty](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DP L2E Examples/CS/Program.cs#wherenavproperty)] [!code-vb[DP L2E Examples#WhereNavProperty](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DP L2E Examples/VB/Module1.vb#wherenavproperty)] -## 参照 - [LINQ to Entities でのクエリ](../../../../../../docs/framework/data/adonet/ef/language-reference/queries-in-linq-to-entities.md) \ No newline at end of file +## 関連項目 + [LINQ to Entities でのクエリ](../../../../../../docs/framework/data/adonet/ef/language-reference/queries-in-linq-to-entities.md) diff --git a/docs/framework/data/adonet/sql/linq/boolean-data-types.md b/docs/framework/data/adonet/sql/linq/boolean-data-types.md index 17c6b824bf6..940517fb1a9 100644 --- a/docs/framework/data/adonet/sql/linq/boolean-data-types.md +++ b/docs/framework/data/adonet/sql/linq/boolean-data-types.md @@ -1,26 +1,24 @@ ---- +--- title: "ブール型" ms.custom: ms.date: 03/30/2017 ms.prod: .net-framework ms.reviewer: ms.suite: -ms.technology: -- dotnet-ado +ms.technology: dotnet-ado ms.tgt_pltfrm: ms.topic: article ms.assetid: 57f7376b-4b11-4b35-98a9-780382053ceb -caps.latest.revision: 2 +caps.latest.revision: "2" author: JennieHubbard ms.author: jhubbard manager: jhubbard -ms.translationtype: HT -ms.sourcegitcommit: 306c608dc7f97594ef6f72ae0f5aaba596c936e1 ms.openlocfilehash: fb9c76193203255b943b1f1e5f8109b4bdd4bd40 -ms.contentlocale: ja-jp -ms.lasthandoff: 09/25/2017 - ---- +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- # ブール型 ブール演算子は、共通言語ランタイム (CLR) で正常に動作しますが、ショートサーキットの動作は変換されません。 たとえば、Visual Basic の `AndAlso` 演算子は `And` 演算子のように動作します。 C# の `&&` 演算子は `&` 演算子のように動作します。 @@ -30,11 +28,10 @@ ms.lasthandoff: 09/25/2017 |------------------|---------| |[And 演算子](~/docs/visual-basic/language-reference/operators/and-operator.md)|[& 演算子](~/docs/csharp/language-reference/operators/and-operator.md)| |[AndAlso 演算子](~/docs/visual-basic/language-reference/operators/andalso-operator.md)|[&& 演算子](~/docs/csharp/language-reference/operators/conditional-and-operator.md)| -|[Or 演算子](~/docs/visual-basic/language-reference/operators/or-operator.md)|[& #124 です。演算子](~/docs/csharp/language-reference/operators/or-operator.md)| -|[OrElse 演算子](~/docs/visual-basic/language-reference/operators/orelse-operator.md)|[| & #124 です。演算子](~/docs/csharp/language-reference/operators/conditional-or-operator.md)| +|[Or 演算子](~/docs/visual-basic/language-reference/operators/or-operator.md)|[|です。演算子](~/docs/csharp/language-reference/operators/or-operator.md)| +|[OrElse 演算子](~/docs/visual-basic/language-reference/operators/orelse-operator.md)|[| |です。演算子](~/docs/csharp/language-reference/operators/conditional-or-operator.md)| |[Xor 演算子](~/docs/visual-basic/language-reference/operators/xor-operator.md)|[^ 演算子](~/docs/csharp/language-reference/operators/xor-operator.md)| |[Not 演算子](~/docs/visual-basic/language-reference/operators/not-operator.md)|[!演算子](~/docs/csharp/language-reference/operators/logical-negation-operator.md)| ## 関連項目 [データ型および関数](../../../../../../docs/framework/data/adonet/sql/linq/data-types-and-functions.md) - diff --git a/docs/framework/data/adonet/sql/linq/communicating-with-the-database.md b/docs/framework/data/adonet/sql/linq/communicating-with-the-database.md index a91f31f2b03..91103267e48 100644 --- a/docs/framework/data/adonet/sql/linq/communicating-with-the-database.md +++ b/docs/framework/data/adonet/sql/linq/communicating-with-the-database.md @@ -1,33 +1,36 @@ ---- -title: "Communicating with the Database | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "データベースとの通信" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 659d9817-bcaa-457f-9639-169394177274 -caps.latest.revision: 2 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 2 ---- -# Communicating with the Database +caps.latest.revision: "2" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: 4b7c59096f1decc57b5d8aa4194cbb838c358042 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# データベースとの通信 このセクションのトピックでは、データベースとの通信を確立および維持するうえでの基本的な事項について説明します。 -## このセクションの内容 - [How to: Connect to a Database](../../../../../../docs/framework/data/adonet/sql/linq/how-to-connect-to-a-database.md) +## このセクションの内容 + [方法: データベースへの接続](../../../../../../docs/framework/data/adonet/sql/linq/how-to-connect-to-a-database.md) クラスを使用してデータベースに接続する方法について説明します。 - [How to: Directly Execute SQL Commands](../../../../../../docs/framework/data/adonet/sql/linq/how-to-directly-execute-sql-commands.md) + [方法: SQL コマンドを直接実行](../../../../../../docs/framework/data/adonet/sql/linq/how-to-directly-execute-sql-commands.md) クラスを使用して SQL 言語コマンドを送信する方法について説明します。 - [How to: Reuse a Connection Between an ADO.NET Command and a DataContext](../../../../../../docs/framework/data/adonet/sql/linq/how-to-reuse-a-connection-between-an-ado-net-command-and-a-datacontext.md) - [!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)] アプリケーションで既存の [!INCLUDE[vstecado](../../../../../../includes/vstecado-md.md)] 接続を使用する例を示します。 + [方法: ADO.NET コマンドおよび DataContext 間の接続を再利用](../../../../../../docs/framework/data/adonet/sql/linq/how-to-reuse-a-connection-between-an-ado-net-command-and-a-datacontext.md) + [!INCLUDE[vstecado](../../../../../../includes/vstecado-md.md)] アプリケーションで既存の [!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)] 接続を使用する例を示します。 -## 参照 - [プログラミング ガイド](../../../../../../docs/framework/data/adonet/sql/linq/programming-guide.md) \ No newline at end of file +## 関連項目 + [プログラミング ガイド](../../../../../../docs/framework/data/adonet/sql/linq/programming-guide.md) diff --git a/docs/framework/data/adonet/sql/linq/customizing-operations-by-using-stored-procedures.md b/docs/framework/data/adonet/sql/linq/customizing-operations-by-using-stored-procedures.md index 1b64ff3e51c..16e840b742d 100644 --- a/docs/framework/data/adonet/sql/linq/customizing-operations-by-using-stored-procedures.md +++ b/docs/framework/data/adonet/sql/linq/customizing-operations-by-using-stored-procedures.md @@ -1,55 +1,61 @@ ---- -title: "Customizing Operations By Using Stored Procedures | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "ストアド プロシージャによる操作のカスタマイズ" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb ms.assetid: aedbecc1-c33c-4fb4-8861-fdf7e1dc6b8a -caps.latest.revision: 3 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 3 ---- -# Customizing Operations By Using Stored Procedures -ストアド プロシージャは、既定の動作をオーバーライドする方法として一般的に使用されます。 このトピックでは、ストアド プロシージャ用に生成されたメソッド ラッパーを使用する方法、およびストアド プロシージャを直接呼び出す方法の例を示します。 +caps.latest.revision: "3" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: 9110cec32075c85807d3ef1550ae1a9e63b4239f +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# ストアド プロシージャによる操作のカスタマイズ +ストアド プロシージャは、既定の動作をオーバーライドする方法として一般的に使用されます。 このトピックでは、ストアド プロシージャ用に生成されたメソッド ラッパーを使用する方法、およびストアド プロシージャを直接呼び出す方法の例を示します。 [!INCLUDE[vs_current_short](../../../../../../includes/vs-current-short-md.md)] を使用している場合は、[!INCLUDE[vs_ordesigner_long](../../../../../../includes/vs-ordesigner-long-md.md)]を使用して、挿入、更新、および削除を実行するストアド プロシージャを割り当てることができます。 > [!NOTE] -> データベースによって生成された値を読み取るには、ストアド プロシージャの出力パラメーターを使用します。 出力パラメーターを使用できない場合は、[!INCLUDE[vs_ordesigner_long](../../../../../../includes/vs-ordesigner-long-md.md)]によって生成されたオーバーライドで処理するのではなく、部分メソッドの実装を作成します。 データベースによって生成される値に割り当てられているメンバーは、`INSERT` 操作または `UPDATE` 操作が正常に完了した後で、適切な値に設定する必要があります。 詳細については、「[Responsibilities of the Developer In Overriding Default Behavior](../../../../../../docs/framework/data/adonet/sql/linq/responsibilities-of-the-developer-in-overriding-default-behavior.md)」を参照してください。 +> データベースによって生成された値を読み取るには、ストアド プロシージャの出力パラメーターを使用します。 出力パラメーターを使用できない場合は、[!INCLUDE[vs_ordesigner_long](../../../../../../includes/vs-ordesigner-long-md.md)]によって生成されたオーバーライドで処理するのではなく、部分メソッドの実装を作成します。 データベースによって生成される値に割り当てられているメンバーは、`INSERT` 操作または `UPDATE` 操作が正常に完了した後で、適切な値に設定する必要があります。 詳細については、次を参照してください。[をオーバーライドする既定の動作の開発者の責任](../../../../../../docs/framework/data/adonet/sql/linq/responsibilities-of-the-developer-in-overriding-default-behavior.md)です。 -## 例 +## 例 -### 説明 +### 説明 次の例では、`Northwind` クラスに、ストアド プロシージャを呼び出す 2 つのメソッドがあり、派生クラスでのオーバーライドに使用されているものとします。 -### コード - [!code-csharp[DLinqOverrideDefaultSproc#1](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqOverrideDefaultSproc/cs/northwind.cs#1)] +### コード + [!code-csharp[DLinqOverrideDefaultSproc#1](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqOverrideDefaultSproc/cs/northwind.cs#1)] [!code-vb[DLinqOverrideDefaultSproc#1](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DLinqOverrideDefaultSproc/vb/northwind.vb#1)] -## 例 +## 例 -### 説明 +### 説明 次のクラスはこれらのメソッドをオーバーライドに使用しています。 -### コード - [!code-csharp[DLinqOverrideDefaultSproc#2](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqOverrideDefaultSproc/cs/northwind.cs#2)] +### コード + [!code-csharp[DLinqOverrideDefaultSproc#2](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqOverrideDefaultSproc/cs/northwind.cs#2)] [!code-vb[DLinqOverrideDefaultSproc#2](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DLinqOverrideDefaultSproc/vb/northwind.vb#2)] -## 例 +## 例 -### 説明 +### 説明 `NorthwindThroughSprocs` は `Northwnd` とまったく同様に使用できます。 -### コード - [!code-csharp[DLinqOverrideDefaultSproc#3](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqOverrideDefaultSproc/cs/Program.cs#3)] +### コード + [!code-csharp[DLinqOverrideDefaultSproc#3](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqOverrideDefaultSproc/cs/Program.cs#3)] [!code-vb[DLinqOverrideDefaultSproc#3](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DLinqOverrideDefaultSproc/vb/Module1.vb#3)] -## 参照 - [Responsibilities of the Developer In Overriding Default Behavior](../../../../../../docs/framework/data/adonet/sql/linq/responsibilities-of-the-developer-in-overriding-default-behavior.md) \ No newline at end of file +## 関連項目 + [既定の動作をオーバーライドするときの開発者の責任](../../../../../../docs/framework/data/adonet/sql/linq/responsibilities-of-the-developer-in-overriding-default-behavior.md) diff --git a/docs/framework/data/adonet/sql/linq/how-to-retrieve-entity-conflict-information.md b/docs/framework/data/adonet/sql/linq/how-to-retrieve-entity-conflict-information.md index 7f32bd5ab30..b8dfbeb9a4e 100644 --- a/docs/framework/data/adonet/sql/linq/how-to-retrieve-entity-conflict-information.md +++ b/docs/framework/data/adonet/sql/linq/how-to-retrieve-entity-conflict-information.md @@ -1,29 +1,35 @@ ---- -title: "How to: Retrieve Entity Conflict Information | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "方法 : エンティティの競合情報を取得する" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb ms.assetid: 9a02b608-e7bb-4041-a452-a7fed26fd008 -caps.latest.revision: 2 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 2 ---- -# How to: Retrieve Entity Conflict Information - クラスのオブジェクトを使用して、 例外によって発生する競合に関する情報を提供できます。 詳細については、「[Optimistic Concurrency: Overview](../../../../../../docs/framework/data/adonet/sql/linq/optimistic-concurrency-overview.md)」を参照してください。 +caps.latest.revision: "2" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: 26f3ec3736b04eeffc1cd741e2c06a39ef7f1a0d +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# 方法 : エンティティの競合情報を取得する + クラスのオブジェクトを使用して、 例外によって発生する競合に関する情報を提供できます。 詳細については、次を参照してください。[オプティミスティック同時実行制御: 概要](../../../../../../docs/framework/data/adonet/sql/linq/optimistic-concurrency-overview.md)です。 -## 使用例 +## 例 次の例では、累積した競合のリストを反復処理します。 - [!code-csharp[System.Data.Linq.ObjectChangeConflict#1](../../../../../../samples/snippets/csharp/VS_Snippets_Data/system.data.linq.objectchangeconflict/cs/program.cs#1)] + [!code-csharp[System.Data.Linq.ObjectChangeConflict#1](../../../../../../samples/snippets/csharp/VS_Snippets_Data/system.data.linq.objectchangeconflict/cs/program.cs#1)] [!code-vb[System.Data.Linq.ObjectChangeConflict#1](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/system.data.linq.objectchangeconflict/vb/module1.vb#1)] -## 参照 - [How to: Manage Change Conflicts](../../../../../../docs/framework/data/adonet/sql/linq/how-to-manage-change-conflicts.md) \ No newline at end of file +## 関連項目 + [方法: 変更の競合の管理](../../../../../../docs/framework/data/adonet/sql/linq/how-to-manage-change-conflicts.md) diff --git a/docs/framework/data/adonet/sql/linq/object-identity.md b/docs/framework/data/adonet/sql/linq/object-identity.md index 899528f5295..07d276e1624 100644 --- a/docs/framework/data/adonet/sql/linq/object-identity.md +++ b/docs/framework/data/adonet/sql/linq/object-identity.md @@ -1,50 +1,56 @@ ---- -title: "Object Identity | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "オブジェクト ID" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb ms.assetid: c788f2f9-65cc-4455-9907-e8388a268e00 -caps.latest.revision: 2 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 2 ---- -# Object Identity -実行時のオブジェクトは、一意の ID を持ちます。 2 つの変数が同じオブジェクトを参照している場合、実際それらの変数は、そのオブジェクトの同じインスタンスを参照しています。 したがって、一方の変数から加えた変更は、もう一方の変数から直ちに参照できます。 +caps.latest.revision: "2" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: 97c07ce351de5b7939bdcaf441bc46dac50a8c23 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# オブジェクト ID +実行時のオブジェクトは、一意の ID を持ちます。 2 つの変数が同じオブジェクトを参照している場合、実際それらの変数は、そのオブジェクトの同じインスタンスを参照しています。 したがって、一方の変数から加えた変更は、もう一方の変数から直ちに参照できます。 - リレーショナル データベースのテーブルの行は、一意の ID を持ちません。 それぞれの行は一意の主キーを持つので、同じキー値を持つ行が存在することはありません。 しかしこれは、データベース テーブルの中だけでの制限です。 + リレーショナル データベースのテーブルの行は、一意の ID を持ちません。 それぞれの行は一意の主キーを持つので、同じキー値を持つ行が存在することはありません。 しかしこれは、データベース テーブルの中だけでの制限です。 - 実際には、データベースの外にデータを取り出して、別の層に移し、そこでアプリケーションが処理を行うのが普通です。 [!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)] がサポートするのはこのモデルです。 データベースからデータを行として取り出す場合、同じデータを表す 2 つの行が、実際に同じ行インスタンスに対応付けられることは求めません。 ある特定の顧客についてのクエリを 2 回行うと、2 行のデータが取得されます。どちらの行も、内容は同じ情報です。 + 実際には、データベースの外にデータを取り出して、別の層に移し、そこでアプリケーションが処理を行うのが普通です。 [!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)] がサポートするのはこのモデルです。 データベースからデータを行として取り出す場合、同じデータを表す 2 つの行が、実際に同じ行インスタンスに対応付けられることは求めません。 ある特定の顧客についてのクエリを 2 回行うと、2 行のデータが取得されます。 どちらの行も、中身は同じ情報です。 - オブジェクトの場合、求める動作は大きく異なります。 に対して同じ情報を繰り返し要求した場合、同じオブジェクト インスタンスが返されることを期待します。 そのような動作を期待するのは、オブジェクトはアプリケーションにとって特別な意味を持つものであり、オブジェクトらしい動作が求められるためです。 オブジェクトは階層やグラフとして設計されています。 そして、そのように取得されることを期待します。同じデータを何回か要求したからといって、レプリケートされたインスタンスをいくつも返されることは期待しません。 + オブジェクトの場合、求める動作は大きく異なります。 に対して同じ情報を繰り返し要求した場合、同じオブジェクト インスタンスが返されることを期待します。 そのような動作を期待するのは、オブジェクトはアプリケーションにとって特別な意味を持つものであり、オブジェクトらしい動作が求められるためです。 オブジェクトは階層やグラフとして設計されています。 そして、そのように取得されることを期待します。同じデータを何回か要求したからといって、レプリケートされたインスタンスをいくつも返されることは期待しません。 - [!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)] では、オブジェクト ID は によって管理されます。 データベースから新しい行を取得すると、主キーに基づいてその行が ID テーブルに記録され、新しいオブジェクトが作成されます。 それと同じ行を取得した場合、最初のオブジェクト インスタンスがアプリケーションに返されます。 は、このような方法で、データベースにおける ID の概念 \(つまり主キー\) を、言語における ID の概念 \(つまりインスタンス\) に置き換えます。 アプリケーションが参照するオブジェクトは、常に最初に取得した状態です。 新しいデータが異なる場合、破棄されます。 詳細については、「[Retrieving Objects from the Identity Cache](../../../../../../docs/framework/data/adonet/sql/linq/retrieving-objects-from-the-identity-cache.md)」を参照してください。 + [!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)] では、オブジェクト ID は によって管理されます。 データベースから新しい行を取得すると、主キーに基づいてその行が ID テーブルに記録され、新しいオブジェクトが作成されます。 それと同じ行を取得した場合、最初のオブジェクト インスタンスがアプリケーションに返されます。 は、このような方法で、データベースにおける ID の概念 (つまり主キー) を、言語における ID の概念 (つまりインスタンス) に置き換えます。 アプリケーションが参照するオブジェクトは、常に最初に取得した状態です。 新しいデータが異なる場合、破棄されます。 詳細については、次を参照してください。 [Id キャッシュからオブジェクトを取得する](../../../../../../docs/framework/data/adonet/sql/linq/retrieving-objects-from-the-identity-cache.md)です。 - [!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)] は、オプティミスティック更新をサポートするために、この方法を使用してローカル オブジェクトの整合性を維持します。 オブジェクトが最初に作成された後で生じた変更は、アプリケーションが加えた変更だけなので、アプリケーションの意図は明確です。 その間に外部の者によって変更が加えられた場合、`SubmitChanges()` を呼び出した時点で把握されます。 + [!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)]この方法を使用して、オプティミスティック更新をサポートするためにローカル オブジェクトの整合性を管理します。 オブジェクトが最初に作成された後で生じた変更は、アプリケーションが加えた変更だけなので、アプリケーションの意図は明確です。 その間に外部の者によって変更が加えられた場合、`SubmitChanges()` を呼び出した時点で把握されます。 > [!NOTE] -> クエリで要求されたオブジェクトが、既に取得済みであることが簡単に判別できる場合、クエリは実行されません。 ID テーブルは、それまでに取得した全オブジェクトのキャッシュの役割を果たします。 +> クエリで要求されたオブジェクトが、既に取得済みであることが簡単に判別できる場合、クエリは実行されません。 ID テーブルは、それまでに取得した全オブジェクトのキャッシュの役割を果たします。 -## 例 +## 例 -### オブジェクトのキャッシュの例 1 +### オブジェクトのキャッシュの例 1 この例では、同じクエリを 2 回実行した場合、メモリ内にある同じオブジェクトへの参照をそのつど受け取ります。 - [!code-csharp[DLinqObjectIdentity#1](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqObjectIdentity/cs/Program.cs#1)] + [!code-csharp[DLinqObjectIdentity#1](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqObjectIdentity/cs/Program.cs#1)] [!code-vb[DLinqObjectIdentity#1](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DLinqObjectIdentity/vb/Module1.vb#1)] -### オブジェクトのキャッシュの例 2 +### オブジェクトのキャッシュの例 2 この例では、データベースの同じ行を返す、異なるクエリを実行した場合、メモリ内にある同じオブジェクトへの参照をそのつど受け取ります。 - [!code-csharp[DLinqObjectIdentity#2](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqObjectIdentity/cs/Program.cs#2)] + [!code-csharp[DLinqObjectIdentity#2](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqObjectIdentity/cs/Program.cs#2)] [!code-vb[DLinqObjectIdentity#2](../../../../../../samples/snippets/visualbasic/VS_Snippets_Data/DLinqObjectIdentity/vb/Module1.vb#2)] -## 参照 - [Background Information](../../../../../../docs/framework/data/adonet/sql/linq/background-information.md) \ No newline at end of file +## 関連項目 + [背景情報](../../../../../../docs/framework/data/adonet/sql/linq/background-information.md) diff --git a/docs/framework/data/adonet/sql/linq/walkthrough-querying-across-relationships-csharp.md b/docs/framework/data/adonet/sql/linq/walkthrough-querying-across-relationships-csharp.md index 644ec8bc629..4031c45a8e1 100644 --- a/docs/framework/data/adonet/sql/linq/walkthrough-querying-across-relationships-csharp.md +++ b/docs/framework/data/adonet/sql/linq/walkthrough-querying-across-relationships-csharp.md @@ -1,62 +1,65 @@ ---- -title: "Walkthrough: Querying Across Relationships (C#) | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-ado" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "チュートリアル : リレーションシップ間でのクエリの実行 (C#)" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-ado +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 552abeb1-18f2-4e93-a9c6-ef7b2db30c32 -caps.latest.revision: 2 -author: "JennieHubbard" -ms.author: "jhubbard" -manager: "jhubbard" -caps.handback.revision: 2 ---- -# Walkthrough: Querying Across Relationships (C#) -このチュートリアルでは、[!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)] の*関連付け*を使用してデータベース内の外部キー リレーションシップを表現する方法について説明します。 +caps.latest.revision: "2" +author: JennieHubbard +ms.author: jhubbard +manager: jhubbard +ms.openlocfilehash: c294b888d95c4d6a77d96198f885c2363fda4e36 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# チュートリアル : リレーションシップ間でのクエリの実行 (C#) +このチュートリアルの使用[!INCLUDE[vbtecdlinq](../../../../../../includes/vbtecdlinq-md.md)]*アソシエーション*をデータベース内の外部キー リレーションシップを表します。 [!INCLUDE[note_settings_general](../../../../../../includes/note-settings-general-md.md)] - このチュートリアルは、Visual C\# 開発設定を使用して記述されています。 + このチュートリアルは、Visual C# 開発設定を使用して記述されています。 -## 必須コンポーネント - 「[Walkthrough: Simple Object Model and Query \(C\#\)](../../../../../../docs/framework/data/adonet/sql/linq/walkthrough-simple-object-model-and-query-csharp.md)」を終了している必要があります。 このチュートリアルは前のチュートリアルに基づいて作成されており、c:\\linqtest5 に northwnd.mdf ファイルがあることが前提です。 +## 必須コンポーネント + 完了する必要があります[チュートリアル: 単純なオブジェクト モデルとクエリ (c#)](../../../../../../docs/framework/data/adonet/sql/linq/walkthrough-simple-object-model-and-query-csharp.md)です。 このチュートリアルは前のチュートリアルに基づいて作成されており、c:\linqtest5 に northwnd.mdf ファイルがあることが前提です。 -## 概要 +## 概要 このチュートリアルは、主に次の 3 つの手順で構成されています。 - エンティティ クラスを追加して、Northwind サンプル データベース内の Orders テーブルを表します。 - `Customer` クラスに注釈を付けて、`Customer` クラスと `Order` クラス間のリレーションシップを強化します。 -- クエリを作成および実行して、`Customer` クラスによる `Order` 情報の取得をテストします。 +- クエリを作成および実行して、`Order` クラスによる `Customer` 情報の取得をテストします。 -## テーブル間のリレーションシップを指定する +## テーブル間のリレーションシップを指定する `Customer` クラス定義の後に、次のコードから成る `Order` エンティティ クラス定義を作成します。これは、`Order.Customer` が外部キーとして `Customer.CustomerID` に関係することを示しています。 -#### Order エンティティ クラスを追加するには +#### Order エンティティ クラスを追加するには - `Customer` クラスの後に次のコードを入力または貼り付けます。 [!code-csharp[DLinqWalk2CS#1](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqWalk2CS/cs/Program.cs#1)] -## Customer クラスに注釈を付ける - ここでは、`Customer` クラスに注釈を付けて、`Order` クラスとのリレーションシップを指定します。 いずれかの方向のリレーションシップが定義されていればリンクを作成できるため、この注釈の追加は必ずしも必要ではありません。 しかし、この注釈を追加することで、どちらの方向でも簡単にオブジェクトを移動できます。 +## Customer クラスに注釈を付ける + ここでは、`Customer` クラスに注釈を付けて、`Order` クラスとのリレーションシップを指定します。 いずれかの方向のリレーションシップが定義されていればリンクを作成できるため、この注釈の追加は必ずしも必要ではありません。 しかし、この注釈を追加することで、どちらの方向でも簡単にオブジェクトを移動できます。 -#### Customer クラスに注釈を付けるには +#### Customer クラスに注釈を付けるには - `Customer` クラスに次のコードを入力または貼り付けます。 [!code-csharp[DLinqWalk2CS#2](../../../../../../samples/snippets/csharp/VS_Snippets_Data/DLinqWalk2CS/cs/Program.cs#2)] -## Customer\-Order リレーションシップ間のクエリを作成および実行する - `Customer` オブジェクトから `Order` オブジェクトに、またはその逆の順序で、直接アクセスできます。 Customer と Order の間に、明示的な*結合*は必要ありません。 +## Customer-Order リレーションシップ間のクエリを作成および実行する + `Order` オブジェクトから `Customer` オブジェクトに、またはその逆の順序で、直接アクセスできます。 必要としない、明示的な*結合*customers と orders のです。 -#### Customer オブジェクトを使用して Order オブジェクトにアクセスするには +#### Customer オブジェクトを使用して Order オブジェクトにアクセスするには 1. `Main` メソッドに次のコードを入力または貼り付けることによって、メソッドを変更します。 @@ -69,12 +72,12 @@ caps.handback.revision: 2 3. コンソール ウィンドウで Enter キーを押して、デバッグを停止します。 -## データベースの厳密に型指定されたビューを作成する - データベースの厳密に型指定されたビューを使用すると、操作が非常に簡単になります。 オブジェクトを厳密に型指定することによって、 を呼び出す必要がありません。 厳密に型指定された オブジェクトを使用する場合は、すべてのクエリで、厳密に型指定されたテーブルを使用できます。 +## データベースの厳密に型指定されたビューを作成する + データベースの厳密に型指定されたビューを使用すると、操作が非常に簡単になります。 オブジェクトを厳密に型指定することによって、 を呼び出す必要がありません。 厳密に型指定された オブジェクトを使用する場合は、すべてのクエリで、厳密に型指定されたテーブルを使用できます。 次の手順では、データベース内の Customers テーブルに対応する厳密に型指定されたテーブルとして、`Customers` を作成します。 -#### DataContext オブジェクトを厳密に型指定するには +#### DataContext オブジェクトを厳密に型指定するには 1. `Customer` クラス宣言の上に次のコードを追加します。 @@ -92,8 +95,8 @@ caps.handback.revision: 2 4. コンソール ウィンドウで Enter キーを押して、デバッグを停止します。 -## 次の手順 - 次のチュートリアル \([Walkthrough: Manipulating Data \(C\#\)](../../../../../../docs/framework/data/adonet/sql/linq/walkthrough-manipulating-data-csharp.md)\) では、データの操作方法について説明します。 そのチュートリアルを実行するのに、既に終了したこのシリーズの 2 つのチュートリアルを保存する必要はありません。 +## 次の手順 + 次のチュートリアル ([チュートリアル: データの操作 (c#)](../../../../../../docs/framework/data/adonet/sql/linq/walkthrough-manipulating-data-csharp.md)) データを操作する方法を示します。 そのチュートリアルを実行するのに、既に終了したこのシリーズの 2 つのチュートリアルを保存する必要はありません。 -## 参照 - [Learning by Walkthroughs](../../../../../../docs/framework/data/adonet/sql/linq/learning-by-walkthroughs.md) \ No newline at end of file +## 関連項目 + [チュートリアルによる学習](../../../../../../docs/framework/data/adonet/sql/linq/learning-by-walkthroughs.md) diff --git a/docs/framework/data/transactions/implementing-a-resource-manager.md b/docs/framework/data/transactions/implementing-a-resource-manager.md index 0a335fbf24b..3f015e90a46 100644 --- a/docs/framework/data/transactions/implementing-a-resource-manager.md +++ b/docs/framework/data/transactions/implementing-a-resource-manager.md @@ -1,61 +1,65 @@ ---- -title: "リソース マネージャーの実装 | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "リソース マネージャーの実装" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.tgt_pltfrm: +ms.topic: article ms.assetid: d5c153f6-4419-49e3-a5f1-a50ae4c81bf3 -caps.latest.revision: 3 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 3 ---- -# リソース マネージャーの実装 -トランザクションで使用される各リソースはリソース マネージャーによって管理され、その動作はトランザクション マネージャーによって調整されます。リソース マネージャーは、トランザクション マネージャーと連携してアプリケーションに原子性と分離を保証します。Microsoft SQL Server、永続的なメッセージ キュー、メモリ内ハッシュ テーブルはすべて、リソース マネージャーの例です。 +caps.latest.revision: "3" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: b72b1bf68fa445a188c327098295d76815a80b16 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# リソース マネージャーの実装 +トランザクションで使用される各リソースはリソース マネージャーによって管理され、その動作はトランザクション マネージャーによって調整されます。 リソース マネージャーは、トランザクション マネージャーと連携してアプリケーションに原子性と分離を保証します。 Microsoft SQL Server、永続的なメッセージ キュー、メモリ内ハッシュ テーブルはすべて、リソース マネージャーの例です。 - リソース マネージャーは、永続性データまたは揮発性データを管理します。リソース マネージャーの永続性または揮発性とは、リソース マネージャーがエラーの回復をサポートするかどうかを意味します。リソース マネージャーがエラーの回復をサポートする場合、フェーズ 1 \(準備\) 中にデータが永続ストレージに保存されます。したがって、リソース マネージャーがダウンした場合でも、回復時にトランザクションへの再参加を行い、トランザクション マネージャーから受信した通知に基づいて適切な動作を実行できます。一般に、揮発性リソース マネージャーは、メモリ内のデータ構造 \(たとえば、メモリ内のトランザクション ハッシュ テーブル\) などの揮発性リソースを管理し、永続的リソース マネージャーは、より永続的なバッキング ストアを持つリソース \(たとえば、バッキング ストアがディスクであるデータベース\) を管理します。 + リソース マネージャーは、永続性データまたは揮発性データを管理します。 リソース マネージャーの永続性または揮発性とは、リソース マネージャーがエラーの回復をサポートするかどうかを意味します。 リソース マネージャーがエラーの回復をサポートする場合、フェーズ 1 (準備) 中にデータが永続ストレージに保存されます。したがって、リソース マネージャーがダウンした場合でも、回復時にトランザクションへの再参加を行い、トランザクション マネージャーから受信した通知に基づいて適切な動作を実行できます。 一般に、揮発性リソース マネージャーは、メモリ内のデータ構造 (たとえば、メモリ内のトランザクション ハッシュ テーブル) などの揮発性リソースを管理し、永続的リソース マネージャーは、より永続的なバッキング ストアを持つリソース (たとえば、バッキング ストアがディスクであるデータベース) を管理します。 - リソースをトランザクションに参加させるには、リソースをトランザクションに登録する必要があります。 クラスは、この機能を提供する一連のメソッドを定義しています。これらのメソッドの名前は **Enlist** で始まります。さまざまな **Enlist** メソッドは、リソース マネージャーが持つ各種の参加リストにそれぞれ対応しています。具体的には、揮発性リソースには メソッド、永続性リソースには メソッドを使用します。簡単に説明すると、リソースが永続性をサポートするかどうかに応じて、 メソッドまたは メソッドのどちらを使用するかを決定した後、リソース マネージャーに インターフェイスを実装して、2 フェーズ コミット \(2PC\) に参加するようにリソースを登録する必要があります。2PC の詳細については、「[単一フェーズおよび複数フェーズでのトランザクションのコミット ](../../../../docs/framework/data/transactions/committing-a-transaction-in-single-phase-and-multi-phase.md)」を参照してください。 + リソースをトランザクションに参加させるには、リソースをトランザクションに登録する必要があります。 クラスを定義する一連のメソッドの名前が始まる**Enlist**この機能を提供します。 さまざまな**Enlist**メソッドは、可能性のある、リソース マネージャーの参加のさまざまな種類に対応しています。 具体的には、揮発性リソースには メソッド、永続性リソースには メソッドを使用します。 簡単に説明すると、リソースが永続性をサポートするかどうかに応じて、 メソッドまたは メソッドのどちらを使用するかを決定した後、リソース マネージャーに インターフェイスを実装して、2 フェーズ コミット (2PC) に参加するようにリソースを登録する必要があります。 2 pc の詳細については、次を参照してください。[単一フェーズと複数のフェーズでトランザクションをコミットする](../../../../docs/framework/data/transactions/committing-a-transaction-in-single-phase-and-multi-phase.md)です。 - 参加により、リソース マネージャーは、トランザクションがコミットまたは中止したときに、トランザクション マネージャーからのコールバックを取得することを保証します。各参加リストについて、 のインスタンスが 1 つ存在します。通常、トランザクションごとに 1 つの参加リストが存在しますが、リソース マネージャーは、同じトランザクションへの複数回の参加を選択できます。 + 参加により、リソース マネージャーは、トランザクションがコミットまたは中止したときに、トランザクション マネージャーからのコールバックを取得することを保証します。 各参加リストについて、 のインスタンスが 1 つ存在します。 通常、トランザクションごとに 1 つの参加リストが存在しますが、リソース マネージャーは、同じトランザクションへの複数回の参加を選択できます。 - 参加後、リソース マネージャーはトランザクションの要求に応答します。永続的リソース マネージャーは、管理するリソースに対するトランザクションの処理を元に戻したり、やり直したりするための十分な情報を格納しています。このためには、さまざまな方法があります。データのバージョン保持と変更ログの保持という 2 つの手法が一般的に使用されます。 + 参加後、リソース マネージャーはトランザクションの要求に応答します。 永続的リソース マネージャーは、管理するリソースに対するトランザクションの処理を元に戻したり、やり直したりするための十分な情報を格納しています。 このためには、さまざまな方法があります。データのバージョン保持と変更ログの保持という 2 つの手法が一般的に使用されます。 - アプリケーションがトランザクションをコミットすると、トランザクション マネージャーが 2 フェーズ コミット プロトコルを開始します。トランザクション マネージャーはまず、参加している各リソース マネージャーに、トランザクションをコミットする準備が整っているかどうかを確認します。リソース マネージャーは、コミットの準備、つまりトランザクションをコミットまたは中止できる状態を整える必要があります。 + アプリケーションがトランザクションをコミットすると、トランザクション マネージャーが 2 フェーズ コミット プロトコルを開始します。 トランザクション マネージャーはまず、参加している各リソース マネージャーに、トランザクションをコミットする準備が整っているかどうかを確認します。 リソース マネージャーは、コミットの準備、つまりトランザクションをコミットまたは中止できる状態を整える必要があります。 - 準備フェーズ中に、永続的リソース マネージャーは安定したストレージに新旧のデータを記録します。したがって、システム障害が発生してもリソース マネージャーはデータを回復できます。リソース マネージャーは準備が整うと、トランザクションをコミットまたは中止するかどうかの決定をトランザクション マネージャーに通知します。いずれかのリソース マネージャーが準備の失敗を報告すると、トランザクション マネージャーは各リソース マネージャーにロールバック コマンドを送信し、アプリケーションにコミットの失敗を通知します。 + 準備フェーズ中に、永続的リソース マネージャーは安定したストレージに新旧のデータを記録します。したがって、システム障害が発生してもリソース マネージャーはデータを回復できます。 リソース マネージャーは準備が整うと、トランザクションをコミットまたは中止するかどうかの決定をトランザクション マネージャーに通知します。 いずれかのリソース マネージャーが準備の失敗を報告すると、トランザクション マネージャーは各リソース マネージャーにロールバック コマンドを送信し、アプリケーションにコミットの失敗を通知します。 - 準備が整うと、リソース マネージャーは、フェーズ 2 でトランザクション マネージャーからコミットまたは中止のコールバックを取得するまで待機する必要があります。通常、準備とコミット プロトコルの全体は瞬時に完了します。システムまたは通信に障害が発生した場合、コミットまたは中止の通知が数分または数時間経っても到着しないことがあります。この間、リソース マネージャーはトランザクションの結果について判断できず、トランザクションがコミットまたは中止されたかどうかを認識できません。トランザクションについて判断できない間、リソース マネージャーはトランザクションをロックし続けてデータの変更を維持し、これらの変更部分を他のトランザクションから分離した状態にします。 + 準備が整うと、リソース マネージャーは、フェーズ 2 でトランザクション マネージャーからコミットまたは中止のコールバックを取得するまで待機する必要があります。 通常、準備とコミット プロトコルの全体は瞬時に完了します。 システムまたは通信に障害が発生した場合、コミットまたは中止の通知が数分または数時間経っても到着しないことがあります。 この間、リソース マネージャーはトランザクションの結果について判断できず、 トランザクションがコミットまたは中止されたかどうかを認識できません。 トランザクションについて判断できない間、リソース マネージャーはトランザクションをロックし続けてデータの変更を維持し、これらの変更部分を他のトランザクションから分離した状態にします。 - リソース マネージャーが失敗すると、そのすべての参加トランザクションは、失敗前に準備またはコミットされたものを除いて中止されます。永続的リソース マネージャーは再起動時に、準備フェーズで書き込まれた準備情報を取得することにより、管理するリソースのコミット状態を再構築し、それに応じてトランザクションをコミットまたは中止します。 + リソース マネージャーが失敗すると、そのすべての参加トランザクションは、失敗前に準備またはコミットされたものを除いて中止されます。 永続的リソース マネージャーは再起動時に、準備フェーズで書き込まれた準備情報を取得することにより、管理するリソースのコミット状態を再構築し、それに応じてトランザクションをコミットまたは中止します。 要約すると、2 フェーズ コミット プロトコルとリソース マネージャーの組み合わせにより、トランザクションの原子性と永続性が実現されます。 - クラスは、PSPE \(Promotable Single Phase Enlistment\) を参加させるための メソッドも提供しています。これにより、永続的リソース マネージャー \(RM\) は、MSDTC による管理のために後で必要に応じてエスカレートできるトランザクションをホストおよび "所有" できます。詳細については、「[単一フェーズ コミットと昇格可能単一フェーズ通知を使用した最適化 ](../../../../docs/framework/data/transactions/optimization-spc-and-promotable-spn.md)」を参照してください。 + クラスは、PSPE (Promotable Single Phase Enlistment) を参加させるための メソッドも提供しています。 これにより、永続的リソース マネージャー (RM) は、MSDTC による管理のために後で必要に応じてエスカレートできるトランザクションをホストおよび "所有" できます。 詳細については、次を参照してください。[単一フェーズのコミットし、昇格可能な単一フェーズの通知を使用して、最適化](../../../../docs/framework/data/transactions/optimization-spc-and-promotable-spn.md)です。 -## このセクションの内容 +## このセクションの内容 リソース マネージャーが通常実行する手順の概要については、次のトピックを参照してください。 - [参加要素としてのリソースのトランザクションへの参加 ](../../../../docs/framework/data/transactions/enlisting-resources-as-participants-in-a-transaction.md) + [トランザクションの参加者としてリソースを参加させる](../../../../docs/framework/data/transactions/enlisting-resources-as-participants-in-a-transaction.md) 永続性リソースまたは揮発性リソースがトランザクションに参加する方法について説明しています。 - [単一フェーズおよび複数フェーズでのトランザクションのコミット ](../../../../docs/framework/data/transactions/committing-a-transaction-in-single-phase-and-multi-phase.md) + [単一フェーズと複数のフェーズでトランザクションをコミットします。](../../../../docs/framework/data/transactions/committing-a-transaction-in-single-phase-and-multi-phase.md) リソース マネージャーがコミット通知に応答し、コミットの準備を行うしくみについて説明しています。 - [回復の実行 ](../../../../docs/framework/data/transactions/performing-recovery.md) + [回復を実行します。](../../../../docs/framework/data/transactions/performing-recovery.md) 永続的リソース マネージャーが、どのようにエラーから回復するかについて説明しています。 - [リソースへのアクセスでのセキュリティ信頼レベル ](../../../../docs/framework/data/transactions/security-trust-levels-in-accessing-resources.md) + [リソースへのアクセスのセキュリティ信頼レベル](../../../../docs/framework/data/transactions/security-trust-levels-in-accessing-resources.md) System.Transactions の 3 つの信頼レベルで、 が公開するリソースの種類に対するアクセスがどのように制限されるかについて説明しています。 - [単一フェーズ コミットと昇格可能単一フェーズ通知を使用した最適化 ](../../../../docs/framework/data/transactions/optimization-spc-and-promotable-spn.md) + [単一フェーズのコミットし、昇格可能な単一フェーズの通知を使用して、最適化](../../../../docs/framework/data/transactions/optimization-spc-and-promotable-spn.md) - リソース マネージャーの実装に使用できる最適化の技法について説明します。 \ No newline at end of file + リソース マネージャーの実装に使用できる最適化の技法について説明します。 diff --git a/docs/framework/data/transactions/managing-concurrency-with-dependenttransaction.md b/docs/framework/data/transactions/managing-concurrency-with-dependenttransaction.md index 09e661202c5..7c68ee984c0 100644 --- a/docs/framework/data/transactions/managing-concurrency-with-dependenttransaction.md +++ b/docs/framework/data/transactions/managing-concurrency-with-dependenttransaction.md @@ -1,32 +1,36 @@ ---- -title: "DependentTransaction の同時実行の管理 | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "DependentTransaction による同時実行の管理" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.tgt_pltfrm: +ms.topic: article ms.assetid: b85a97d8-8e02-4555-95df-34c8af095148 -caps.latest.revision: 3 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 3 ---- -# DependentTransaction の同時実行の管理 - オブジェクトは、 メソッドを使用して作成されます。このオブジェクトの唯一の目的は、他のコード \(ワーカー スレッドなど\) でトランザクションの処理を実行している間、トランザクションをコミットできないように保証することです。複製されたトランザクション内の処理が完了してコミットの準備が整うと、 メソッドを使用して、そのトランザクションの作成者に通知できます。これにより、データの一貫性と正確性を保持できます。 +caps.latest.revision: "3" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 6cb0fa7f328b158613836e6ab20bd33545dc3a5d +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# DependentTransaction による同時実行の管理 + オブジェクトは、 メソッドを使用して作成されます。 このオブジェクトの唯一の目的は、他のコード (ワーカー スレッドなど) でトランザクションの処理を実行している間、トランザクションをコミットできないように保証することです。 複製されたトランザクション内の処理が完了してコミットの準備が整うと、 メソッドを使用して、そのトランザクションの作成者に通知できます。 これにより、データの一貫性と正確性を保持できます。 - クラスは、非同期タスク間の同時実行の管理にも使用できます。この場合は、トランザクションに依存している複製が独自のタスクの処理を行う間、親が任意のコードの実行を継続できます。つまり、依存している複製が完了するまで親の実行がブロックされることはありません。 + クラスは、非同期タスク間の同時実行の管理にも使用できます。 この場合は、トランザクションに依存している複製が独自のタスクの処理を行う間、親が任意のコードの実行を継続できます。 つまり、依存している複製が完了するまで親の実行がブロックされることはありません。 -## トランザクションに依存している複製の作成 - 依存トランザクションを作成するには、 メソッドを呼び出し、パラメーターとして 列挙体を渡します。このパラメーターは、トランザクションに依存している複製が メソッドを呼び出してトランザクションのコミットの準備が整ったことを示す前に、親トランザクションで `Commit` が呼び出された場合のトランザクションの動作を定義します。このパラメーターで有効な値は次のとおりです。 +## トランザクションに依存している複製の作成 + 依存トランザクションを作成するには、 メソッドを呼び出し、パラメーターとして 列挙体を渡します。 このパラメーターは、トランザクションに依存している複製が `Commit` メソッドを呼び出してトランザクションのコミットの準備が整ったことを示す前に、親トランザクションで が呼び出された場合のトランザクションの動作を定義します。 このパラメーターで有効な値は次のとおりです。 -- は、親トランザクションがタイムアウトするまで、またはすべての依存トランザクションで完了を示す が呼び出されるまで、親トランザクションのコミット プロセスをブロックする依存トランザクションを作成します。これは、依存トランザクションが完了するまで、クライアントが親トランザクションのコミットを望まない場合に役立ちます。親トランザクションが依存トランザクションより前に処理を完了して を呼び出した場合、すべての依存トランザクションが を呼び出すまで、コミット プロセスはブロックされ、そのトランザクションで追加処理を実行し、新しい参加リストを作成できる状態になります。すべての依存トランザクションの処理が完了し、 を呼び出すとすぐに、トランザクションのコミット プロセスが開始します。 +- は、親トランザクションがタイムアウトするまで、またはすべての依存トランザクションで完了を示す が呼び出されるまで、親トランザクションのコミット プロセスをブロックする依存トランザクションを作成します。 これは、依存トランザクションが完了するまで、クライアントが親トランザクションのコミットを望まない場合に役立ちます。 親トランザクションが依存トランザクションより前に処理を完了して を呼び出した場合、すべての依存トランザクションが を呼び出すまで、コミット プロセスはブロックされ、そのトランザクションで追加処理を実行し、新しい参加リストを作成できる状態になります。 すべての依存トランザクションの処理が完了し、 を呼び出すとすぐに、トランザクションのコミット プロセスが開始します。 -- 一方、 では、 が呼び出される前に親トランザクションで が呼び出された場合、自動的に中止する依存トランザクションが作成されます。この場合、依存トランザクションで行われたすべての処理は、1 つのトランザクションの有効期間内はそのまま変更されず、その一部でもコミットすることはできません。 +- 一方、 では、 が呼び出される前に親トランザクションで が呼び出された場合、自動的に中止する依存トランザクションが作成されます。 この場合、依存トランザクションで行われたすべての処理は、1 つのトランザクションの有効期間内はそのまま変更されず、その一部でもコミットすることはできません。 - アプリケーションが依存トランザクションでその処理を完了した場合、 メソッドを 1 回だけ呼び出す必要があります。それ以外の場合は、 がスローされます。この呼び出しを行った後は、トランザクションで追加作業を行わないでください。例外が発生します。 + アプリケーションが依存トランザクションでその処理を完了した場合、 メソッドを 1 回だけ呼び出す必要があります。それ以外の場合は、 がスローされます。 この呼び出しを行った後は、トランザクションで追加作業を行わないでください。例外が発生します。 次のコード例では、依存トランザクションの複製を作成してワーカー スレッドに渡すことにより、2 つの同時実行タスクを管理する依存トランザクションを作成する方法を示しています。 @@ -69,23 +73,22 @@ using(TransactionScope scope = new TransactionScope()) /* Do some transactional work here, then: */ scope.Complete(); } - ``` - このクライアント コードは、アンビエント トランザクションの設定も行うトランザクション スコープを作成します。アンビエント トランザクションをワーカー スレッドに渡さないでください。その代わりに、現在のトランザクションで メソッドを呼び出すことにより、現在の \(アンビエント\) トランザクションを複製し、依存トランザクションをワーカー スレッドに渡す必要があります。 + このクライアント コードは、アンビエント トランザクションの設定も行うトランザクション スコープを作成します。 アンビエント トランザクションをワーカー スレッドに渡さないでください。 その代わりに、現在のトランザクションで メソッドを呼び出すことにより、現在の (アンビエント) トランザクションを複製し、依存トランザクションをワーカー スレッドに渡す必要があります。 - `ThreadMethod` メソッドは、新しいスレッドで実行されます。クライアントは新しいスレッドを開始し、`ThreadMethod` パラメーターとして依存トランザクションを渡します。 + `ThreadMethod` メソッドは、新しいスレッドで実行されます。 クライアントは新しいスレッドを開始し、`ThreadMethod` パラメーターとして依存トランザクションを渡します。 - 依存トランザクションは により作成されるため、2 番目のスレッド上ですべてのトランザクションの処理が完了し、依存トランザクションで が呼び出されるまで、トランザクションがコミットされないことが保証されます。つまり、新しいスレッドが依存トランザクションで を呼び出す前にクライアントのスコープが終了した場合 \(**using** ステートメントの最後でトランザクション オブジェクトの破棄を試みた場合\)、依存トランザクションで が呼び出されるまで、クライアント コードはブロックします。その後、トランザクションはコミットまたは中止の処理を完了できます。 + 依存トランザクションは により作成されるため、2 番目のスレッド上ですべてのトランザクションの処理が完了し、依存トランザクションで が呼び出されるまで、トランザクションがコミットされないことが保証されます。 つまり、クライアントのスコープが終了した場合 (、最後のトランザクション オブジェクトを破棄しようとすると、**を使用して**ステートメント) スレッドの新しい呼び出しの前にまで依存のトランザクションで、クライアントコードをブロック依存ファイルで呼び出されるとします。 その後、トランザクションはコミットまたは中止の処理を完了できます。 -## 同時実行に関する問題 +## 同時実行に関する問題 同時実行に関して、 クラスを使用する場合に注意が必要な問題がいくつかあります。 - ワーカー スレッドがトランザクションをロールバックし、親がトランザクションのコミットを試みた場合、 がスローされます。 -- トランザクション内の各ワーカー スレッドについて、トランザクションに依存している複製を新しく作成する必要があります。同一の依存している複製を複数のスレッドに渡さないでください。その複製に対して を呼び出すことができるのは、1 つのスレッドのみであるためです。 +- トランザクション内の各ワーカー スレッドについて、トランザクションに依存している複製を新しく作成する必要があります。 同一の依存している複製を複数のスレッドに渡さないでください。その複製に対して を呼び出すことができるのは、1 つのスレッドのみであるためです。 - ワーカー スレッドが新しいワーカー スレッドを生成する場合、依存している複製から依存している複製を作成し、それを新しいスレッドに渡してください。 -## 参照 - \ No newline at end of file +## 関連項目 + diff --git a/docs/framework/data/wcf/asynchronous-operations-wcf-data-services.md b/docs/framework/data/wcf/asynchronous-operations-wcf-data-services.md index 48f065ff86a..06a6e53746b 100644 --- a/docs/framework/data/wcf/asynchronous-operations-wcf-data-services.md +++ b/docs/framework/data/wcf/asynchronous-operations-wcf-data-services.md @@ -1,47 +1,50 @@ ---- -title: "非同期操作 (WCF Data Services) | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-oob" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "非同期操作 [WCF Data Services]" - - "WCF Data Services, 非同期操作" - - "WCF Data Services, クライアント ライブラリ" +--- +title: "非同期操作 (WCF Data Services)" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework-oob +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +helpviewer_keywords: +- WCF Data Services, asynchronous operations +- asynchronous operations [WCF Data Services] +- WCF Data Services, client library ms.assetid: 679644c7-e3fc-422c-b14a-b44b683900d0 -caps.latest.revision: 2 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 2 ---- -# 非同期操作 (WCF Data Services) -Web アプリケーションは、内部ネットワーク内で実行するアプリケーションより長い、クライアントとサーバーとの間の待機時間に対応する必要があります。 Web を介して [!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] サーバーにアクセスする場合、アプリケーションのパフォーマンスとユーザー エクスペリエンスを最適化するために クラスおよび クラスの非同期メソッドを使用することをお勧めします。 +caps.latest.revision: "2" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: c1fc4b2f02c5b07df71ccf78ade4904297583f7e +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# 非同期操作 (WCF Data Services) +Web アプリケーションは、内部ネットワーク内で実行するアプリケーションより長い、クライアントとサーバーとの間の待機時間に対応する必要があります。 Web を介して サーバーにアクセスする場合、アプリケーションのパフォーマンスとユーザー エクスペリエンスを最適化するために クラスおよび [!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] クラスの非同期メソッドを使用することをお勧めします。 - [!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] サーバーでは、HTTP 要求は非同期として処理されますが、[!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] クライアント ライブラリの一部のメソッドは同期であり、要求と応答のやり取りがすべて完了するまで待ってから実行を継続します。 [!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] クライアント ライブラリの非同期メソッドは、このやり取りの完了を待たず、アプリケーションはユーザー インターフェイスの応答性を維持できます。 + [!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] サーバーでは、HTTP 要求は非同期として処理されますが、[!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] クライアント ライブラリの一部のメソッドは同期であり、要求と応答のやり取りがすべて完了するまで待ってから実行を継続します。 [!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] クライアント ライブラリの非同期メソッドは、このやり取りの完了を待たず、アプリケーションはユーザー インターフェイスの応答性を維持できます。 - クラスと クラスでそれぞれ *Begin* および *End* で始まるメソッドのペアを使用して、非同期操作を実行できます。 *Begin* メソッドは、操作が完了したときにサービスが呼び出すデリゲートを登録します。 *End* メソッドは、完了した操作からのコールバックを処理するために登録されたデリゲートで呼び出します。 *End* メソッドを呼び出して非同期操作を完了するときは、操作を開始するために使用したものと同じ または インスタンスから呼び出しを行う必要があります。 各 *Begin* メソッドは、状態オブジェクトをコールバックに渡すことができる `state` パラメーターを受け取ります。 この状態オブジェクトは、コールバックで指定された から取得され、対応する *End* メソッドを呼び出して非同期操作を完了するために使用されます。 たとえば、 インスタンスで メソッドを呼び出すときにインスタンスを `state` パラメーターとして指定した場合、同じ インスタンスが によって返されます。 この のインスタンスは、 メソッドを呼び出してクエリ操作を完了するために使用されます。 詳細については、「[方法: 非同期データ サービス クエリを実行する](../../../../docs/framework/data/wcf/how-to-execute-asynchronous-data-service-queries-wcf-data-services.md)」を参照してください。 + メソッドのペアを使用して非同期操作を実行することができます、クラスで始まる*開始*と*終了*それぞれします。 *開始*メソッドは、操作が完了したら、サービスによって呼び出されるデリゲートを登録します。 *終了*完了した操作からのコールバックを処理する登録されているデリゲートにメソッドを呼び出す必要があります。 呼び出すと、*終了*メソッドが、非同期操作を完了する行う必要がありますから同じまたは操作を開始するために使用するインスタンス。 各*開始*メソッドは、`state`状態オブジェクトをコールバックに渡すことができるパラメーター。 この状態オブジェクトを取得、コールバックで提供され、対応する呼び出しに使用する*終了*メソッドが非同期操作を完了します。 たとえば、 インスタンスで `state` メソッドを呼び出すときにインスタンスを パラメーターとして指定した場合、同じ インスタンスが によって返されます。 この のインスタンスは、 メソッドを呼び出してクエリ操作を完了するために使用されます。 詳細については、次を参照してください。[する方法: 非同期データ サービス クエリの実行](../../../../docs/framework/data/wcf/how-to-execute-asynchronous-data-service-queries-wcf-data-services.md)です。 > [!NOTE] -> Silverlight 用の .NET Framework で提供されるクライアント ライブラリでは、非同期操作だけがサポートされます。 詳細については、「[WCF Data Services \(Silverlight\)](http://go.microsoft.com/fwlink/?LinkID=143149)」を参照してください。 +> Silverlight 用の .NET Framework で提供されるクライアント ライブラリでは、非同期操作だけがサポートされます。 詳細については、次を参照してください。 [WCF Data Services (Silverlight)](http://go.microsoft.com/fwlink/?LinkID=143149)です。 .NET Framework クライアント ライブラリは、以下の非同期操作をサポートします。 |操作|メソッド| -|--------|----------| +|---------------|-------------| | の実行。|-
- | | からのクエリの実行。|-
- | | からのバッチ クエリの実行。|-
- | | への関連エンティティの読み込み。|-
- | |オブジェクトに対する変更の への保存。|-
- | -## 非同期操作のスレッドに関する考慮事項 - マルチスレッド アプリケーションでは、非同期操作のコールバックとして登録されたデリゲートは、最初の要求を作成する *Begin* メソッドの呼び出しに使用されたものと同じスレッドで必ずしも呼び出す必要はありません。 特定のスレッドでコールバックを呼び出す必要のあるアプリケーションでは、応答を処理する *End* メソッドの実行を目的のスレッドに明示的にマーシャリングする必要があります。 たとえば、Windows Presentation Foundation \(WPF\) ベースのアプリケーションおよび Silverlight ベースのアプリケーションでは、 オブジェクトで メソッドを使用して応答を UI スレッドにマーシャリングする必要があります。 詳細については、「[Querying the Data Service \(WCF Data Services\/Silverlight\)](http://msdn.microsoft.com/ja-jp/3a7cdc07-c37e-4da2-b98b-c3763fd0970b)」を参照してください。 +## 非同期操作のスレッドに関する考慮事項 + マルチ スレッド アプリケーションで非同期操作のコールバックとして登録されているデリゲートが必ずしも呼び出されません呼び出しに使用された同じスレッドで、*開始*メソッドで、最初の要求を作成します。 アプリケーションでは特定のスレッドでコールバックを呼び出す必要があります、する必要があります明示的にマーシャ リングの実行、*終了*メソッドで、目的のスレッドへの応答を処理します。 たとえば、Windows Presentation Foundation (WPF) ベースのアプリケーションおよび Silverlight ベースのアプリケーションでは、 オブジェクトで メソッドを使用して応答を UI スレッドにマーシャリングする必要があります。 詳細については、次を参照してください。[クエリ (WCF データ サービス/Silverlight) データ サービスに対する](http://msdn.microsoft.com/en-us/3a7cdc07-c37e-4da2-b98b-c3763fd0970b)です。 -## 参照 - [WCF Data Services クライアント ライブラリ](../../../../docs/framework/data/wcf/wcf-data-services-client-library.md) \ No newline at end of file +## 関連項目 + [WCF Data Services クライアント ライブラリ](../../../../docs/framework/data/wcf/wcf-data-services-client-library.md) diff --git a/docs/framework/data/wcf/attach-an-existing-entity-to-dc-wcf-data.md b/docs/framework/data/wcf/attach-an-existing-entity-to-dc-wcf-data.md index f0f8c188624..9ffb0890498 100644 --- a/docs/framework/data/wcf/attach-an-existing-entity-to-dc-wcf-data.md +++ b/docs/framework/data/wcf/attach-an-existing-entity-to-dc-wcf-data.md @@ -1,33 +1,38 @@ ---- -title: "方法: 既存のエンティティを DataServiceContext にアタッチする (WCF Data Services) | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-oob" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "WCF Data Services, 変更 (データを)" +--- +title: "方法: 既存のエンティティを DataServiceContext にアタッチする (WCF Data Services)" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework-oob +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb +helpviewer_keywords: WCF Data Services, changing data ms.assetid: e3f2d71d-434c-4e98-91c3-95adae4702b6 -caps.latest.revision: 2 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 2 ---- -# 方法: 既存のエンティティを DataServiceContext にアタッチする (WCF Data Services) -データ サービスにエンティティが既に存在する場合、クエリを最初に実行することなく、[!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] クライアント ライブラリを使用して、エンティティを表すオブジェクトを に直接アタッチできます。 詳細については、「[データ サービスの更新](../../../../docs/framework/data/wcf/updating-the-data-service-wcf-data-services.md)」を参照してください。 +caps.latest.revision: "2" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: e389e0ff274b0b4c256bbd9764cd72805b09fcc2 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# 方法: 既存のエンティティを DataServiceContext にアタッチする (WCF Data Services) +データ サービスで、エンティティが既に存在する場合、[!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)]クライアント ライブラリでは、直接にエンティティを表すオブジェクトをアタッチすることができます、最初にクエリを実行します。 詳細については、次を参照してください。[データ サービスの更新](../../../../docs/framework/data/wcf/updating-the-data-service-wcf-data-services.md)です。 - このトピックの例では、Northwind サンプル データ サービスおよび自動生成されたクライアント データ サービス クラスを使用します。 このサービスおよびクライアント データ クラスは、[WCF Data Services クイック スタート](../../../../docs/framework/data/wcf/quickstart-wcf-data-services.md)を完了したときに作成されます。 + このトピックの例では、Northwind サンプル データ サービスおよび自動生成されたクライアント データ サービス クラスを使用します。 完了したときにこのサービスおよびクライアント データ クラスが作成された、 [WCF Data Services クイック スタート](../../../../docs/framework/data/wcf/quickstart-wcf-data-services.md)です。 -## 使用例 - 次の例は、データ サービスに保存する変更を含む既存の `Customer` オブジェクトを作成する方法を示します。 オブジェクトがコンテキストにアタッチされ、 メソッドが呼び出される前に、 メソッドが呼び出されてアタッチされたオブジェクトが としてマークされます。 +## 例 + 次の例は、データ サービスに保存する変更を含む既存の `Customer` オブジェクトを作成する方法を示します。 オブジェクトがコンテキストにアタッチされ、 メソッドが呼び出される前に、 メソッドが呼び出されてアタッチされたオブジェクトが としてマークされます。 - [!code-csharp[Astoria Northwind Client#AttachObject](../../../../samples/snippets/csharp/VS_Snippets_Misc/astoria northwind client/cs/source.cs#attachobject)] + [!code-csharp[Astoria Northwind Client#AttachObject](../../../../samples/snippets/csharp/VS_Snippets_Misc/astoria northwind client/cs/source.cs#attachobject)] [!code-vb[Astoria Northwind Client#AttachObject](../../../../samples/snippets/visualbasic/VS_Snippets_Misc/astoria northwind client/vb/source.vb#attachobject)] -## 参照 - [WCF Data Services クライアント ライブラリ](../../../../docs/framework/data/wcf/wcf-data-services-client-library.md) \ No newline at end of file +## 関連項目 + [WCF Data Services クライアント ライブラリ](../../../../docs/framework/data/wcf/wcf-data-services-client-library.md) diff --git a/docs/framework/data/wcf/how-to-load-related-entities-wcf-data-services.md b/docs/framework/data/wcf/how-to-load-related-entities-wcf-data-services.md index af6af4b9c90..3b66f38854a 100644 --- a/docs/framework/data/wcf/how-to-load-related-entities-wcf-data-services.md +++ b/docs/framework/data/wcf/how-to-load-related-entities-wcf-data-services.md @@ -1,40 +1,46 @@ ---- -title: "方法: 関連エンティティを読み込む (WCF Data Services) | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-oob" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "WCF Data Services, 遅延コンテンツ" - - "WCF Data Services, データの読み込み" +--- +title: "方法: 関連エンティティを読み込む (WCF Data Services)" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework-oob +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb +helpviewer_keywords: +- WCF Data Services, deferred content +- WCF Data Services, loading data ms.assetid: 6f143d30-d997-4e6b-bcf0-d5c394ecb108 -caps.latest.revision: 2 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 2 ---- -# 方法: 関連エンティティを読み込む (WCF Data Services) -関連付けられたエンティティを [!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] で読み込む必要がある場合、 クラスで メソッドを使用できます。 メソッドを使用して、関連エンティティが同じクエリ応答で集中的に読み込むよう要求することもできます。 +caps.latest.revision: "2" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 67f18d8dd9f25a5eb99f522ddd7942ff27dda497 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# 方法: 関連エンティティを読み込む (WCF Data Services) +関連付けられたエンティティを [!INCLUDE[ssAstoria](../../../../includes/ssastoria-md.md)] で読み込む必要がある場合、 クラスで メソッドを使用できます。 使用することも、メソッドを関連エンティティが同じクエリの応答で集中的に読み込まれることを要求します。 - このトピックの例では、Northwind サンプル データ サービスおよび自動生成されたクライアント データ サービス クラスを使用します。 このサービスおよびクライアント データ クラスは、[WCF Data Services クイック スタート](../../../../docs/framework/data/wcf/quickstart-wcf-data-services.md)を完了したときに作成されます。 + このトピックの例では、Northwind サンプル データ サービスおよび自動生成されたクライアント データ サービス クラスを使用します。 完了したときにこのサービスおよびクライアント データ クラスが作成された、 [WCF Data Services クイック スタート](../../../../docs/framework/data/wcf/quickstart-wcf-data-services.md)です。 -## 使用例 - 次の例は、返される各 `Orders` インスタンスに関連付けられた `Customer` を明示的に読み込む方法を示します。 +## 例 + 次の例は、返される各 `Customer` インスタンスに関連付けられた `Orders` を明示的に読み込む方法を示します。 - [!code-csharp[Astoria Northwind Client#LoadRelatedOrderCustomer](../../../../samples/snippets/csharp/VS_Snippets_Misc/astoria northwind client/cs/source.cs#loadrelatedordercustomer)] + [!code-csharp[Astoria Northwind Client#LoadRelatedOrderCustomer](../../../../samples/snippets/csharp/VS_Snippets_Misc/astoria northwind client/cs/source.cs#loadrelatedordercustomer)] [!code-vb[Astoria Northwind Client#LoadRelatedOrderCustomer](../../../../samples/snippets/visualbasic/VS_Snippets_Misc/astoria northwind client/vb/source.vb#loadrelatedordercustomer)] -## 使用例 - 次の例は、 メソッドを使用して、クエリによって返される `Orders` に属する `Order Details` を返す方法を示します。 +## 例 + 次の例は、 メソッドを使用して、クエリによって返される `Order Details` に属する `Orders` を返す方法を示します。 - [!code-csharp[Astoria Northwind Client#ExpandOrderDetails](../../../../samples/snippets/csharp/VS_Snippets_Misc/astoria northwind client/cs/source.cs#expandorderdetails)] + [!code-csharp[Astoria Northwind Client#ExpandOrderDetails](../../../../samples/snippets/csharp/VS_Snippets_Misc/astoria northwind client/cs/source.cs#expandorderdetails)] [!code-vb[Astoria Northwind Client#ExpandOrderDetails](../../../../samples/snippets/visualbasic/VS_Snippets_Misc/astoria northwind client/vb/source.vb#expandorderdetails)] -## 参照 - [データ サービスのクエリ](../../../../docs/framework/data/wcf/querying-the-data-service-wcf-data-services.md) \ No newline at end of file +## 関連項目 + [データ サービスに対するクエリ](../../../../docs/framework/data/wcf/querying-the-data-service-wcf-data-services.md) diff --git a/docs/framework/debug-trace-profile/performance-counters-and-in-process-side-by-side-applications.md b/docs/framework/debug-trace-profile/performance-counters-and-in-process-side-by-side-applications.md index 2d9717c4569..00075f3ea39 100644 --- a/docs/framework/debug-trace-profile/performance-counters-and-in-process-side-by-side-applications.md +++ b/docs/framework/debug-trace-profile/performance-counters-and-in-process-side-by-side-applications.md @@ -1,36 +1,32 @@ ---- +--- title: "パフォーマンス カウンターとインプロセス side-by-side アプリケーション" ms.custom: ms.date: 03/30/2017 ms.prod: .net-framework ms.reviewer: ms.suite: -ms.technology: -- dotnet-clr +ms.technology: dotnet-clr ms.tgt_pltfrm: ms.topic: article dev_langs: -- VB -- CSharp -- C++ -- jsharp +- csharp +- vb helpviewer_keywords: - performance counters - performance counters,and in-process side-by-side applications - performance,.NET Framework applications - performance monitoring,counters ms.assetid: 6888f9be-c65b-4b03-a07b-df7ebdee2436 -caps.latest.revision: 26 +caps.latest.revision: "26" author: rpetrusha ms.author: ronpet manager: wpickett -ms.translationtype: HT -ms.sourcegitcommit: 306c608dc7f97594ef6f72ae0f5aaba596c936e1 -ms.openlocfilehash: 713aa3a870c42014de01d6782d7452ab60792cc4 -ms.contentlocale: ja-jp -ms.lasthandoff: 08/21/2017 - ---- +ms.openlocfilehash: 16c43545b24f8c0290bfe993d91b7e4203ac11fa +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- # パフォーマンス カウンターとインプロセス side-by-side アプリケーション パフォーマンス モニター (Perfmon.exe) を使用すると、ランタイムごとにパフォーマンス カウンターを区別できるようになります。 このトピックでは、この機能を有効にするために必要なレジストリの変更について説明します。 @@ -59,7 +55,8 @@ ms.lasthandoff: 08/21/2017 `ProcessNameFormat` 値をプログラムで変更する例を次に示します。 - [!code-csharp[Conceptual.PerfCounters.InProSxS#1](../../../samples/snippets/csharp/VS_Snippets_CLR/conceptual.perfcounters.inprosxs/cs/regsetting1.cs#1)] [!code-vb[Conceptual.PerfCounters.InProSxS#1](../../../samples/snippets/visualbasic/VS_Snippets_CLR/conceptual.perfcounters.inprosxs/vb/regsetting1.vb#1)] + [!code-csharp[Conceptual.PerfCounters.InProSxS#1](../../../samples/snippets/csharp/VS_Snippets_CLR/conceptual.perfcounters.inprosxs/cs/regsetting1.cs#1)] + [!code-vb[Conceptual.PerfCounters.InProSxS#1](../../../samples/snippets/visualbasic/VS_Snippets_CLR/conceptual.perfcounters.inprosxs/vb/regsetting1.vb#1)] このようにレジストリを変更すると、Perfmon.exe では、[!INCLUDE[net_v40_short](../../../includes/net-v40-short-md.md)] をターゲットとするアプリケーション名は *application*_`p`*processID*\_`r`*runtimeID* と表示されます。この *application* はアプリケーション名、*processID* はアプリケーションのプロセス識別子、*runtimeID* は共通言語ランタイム識別子です。 たとえば、myapp.exe というアプリケーションが 2 インスタンスの共通言語ランタイムを読み込んだ場合、Perfmon.exe では、1 つ目のインスタンスは myapp_p1416_r10、2 つ目のインスタンスは myapp_p3160_r10 と識別できます。 ランタイム識別子は、プロセス内のランタイムのあいまいさを排除するだけです。ランタイムに関するその他の情報は提供されません (たとえば、ランタイム ID はランタイムのバージョンや SKU と関係がありません)。 @@ -69,4 +66,3 @@ ms.lasthandoff: 08/21/2017 > プロセス識別子によって、旧バージョンのランタイムを使用する同じ名前の 2 つのアプリケーションが解決する際のあいまいさが排除されます。 旧バージョンの共通言語ランタイムは side-by-side シナリオをサポートしていないため、旧バージョンでランタイム識別子は必須ではありません。 [!INCLUDE[net_v40_short](../../../includes/net-v40-short-md.md)] が存在しない場合、またはアンインストールされた場合、このレジストリ キーを設定しても影響はありません。 つまり、同じ名前のアプリケーションが 2 つあっても、Perfmon.exe で *application*、*application#1* と表示されます (たとえば、**myapp** と **myapp#1**)。 - diff --git a/docs/framework/interop/registration-free-com-interop.md b/docs/framework/interop/registration-free-com-interop.md index b1800ed8d10..29eb68522ab 100644 --- a/docs/framework/interop/registration-free-com-interop.md +++ b/docs/framework/interop/registration-free-com-interop.md @@ -1,19 +1,13 @@ ---- +--- title: "登録を必要としない COM 相互運用機能" ms.custom: ms.date: 03/30/2017 ms.prod: .net-framework ms.reviewer: ms.suite: -ms.technology: -- dotnet-clr +ms.technology: dotnet-clr ms.tgt_pltfrm: ms.topic: article -dev_langs: -- VB -- CSharp -- C++ -- jsharp helpviewer_keywords: - assemblies [.NET Framework], interop - COM interop, registration-free COM interop @@ -23,17 +17,16 @@ helpviewer_keywords: - object activation - registration-free COM interop, about registration-free COM interop ms.assetid: 90f308b9-82dc-414a-bce1-77e0155e56bd -caps.latest.revision: 12 +caps.latest.revision: "12" author: rpetrusha ms.author: ronpet manager: wpickett -ms.translationtype: HT -ms.sourcegitcommit: 306c608dc7f97594ef6f72ae0f5aaba596c936e1 -ms.openlocfilehash: dd08f4d4466582b1e6ff1f80f586482cd3e2ec0c -ms.contentlocale: ja-jp -ms.lasthandoff: 08/21/2017 - ---- +ms.openlocfilehash: 28ecb3419bddcc8e9a192b240a7bf90474314c1f +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- # 登録を必要としない COM 相互運用機能 登録を必要としない COM 相互運用機能は、アセンブリ情報を格納するために Windows レジストリを使用しないで、コンポーネントをアクティブにします。 展開中にコンピューター上のコンポーネントを登録するのではなく、バインディングとアクティベーションに関する情報を含む Win32 スタイルのマニフェスト ファイルをデザイン時に作成します。 レジストリ キーではなく、これらのマニフェスト ファイルが、オブジェクトのアクティベーションを指示します。 @@ -60,15 +53,14 @@ ms.lasthandoff: 08/21/2017 ### 登録を必要としないアクティベーション用の COM コンポーネントの構成 -1. COM コンポーネントが登録を必要としないアクティベーションに含まれるようにするには、それを side-by-side アセンブリとして展開する必要があります。 Side-by-side アセンブリはアンマネージ アセンブリです。 詳しくは、MSDN ライブラリの「Using Side-by-side Assemblies」を参照してください。 +1. COM コンポーネントが登録を必要としないアクティベーションに含まれるようにするには、それを side-by-side アセンブリとして展開する必要があります。 Side-by-side アセンブリはアンマネージ アセンブリです。 詳細については、次を参照してください。[を使用するサイド バイ サイド アセンブリ](https://msdn.microsoft.com/library/windows/desktop/aa376618.aspx)です。 COM の side-by-side アセンブリを使用するには、.NET ベースのアプリケーション開発者が、バインディングとアクティベーションの情報を含むアプリケーション マニフェストを提供する必要があります。 Windows XP オペレーティング システムには、アンマネージの side-by-side アセンブリのサポートが組み込まれています。 オペレーティング システムでサポートされている COM ランタイムは、アクティブ化されるコンポーネントがレジストリに存在しない場合、アプリケーション マニフェストをスキャンしてアクティベーション情報を見つけます。 - 登録を必要としないアクティベーションは、Windows XP にインストールされている COM コンポーネントでは省略可能です。 アプリケーションに、side-by-side アセンブリを追加する方法の詳細な手順については、MSDN ライブラリの「Using Side-by-side Assemblies」を参照してください。 + 登録を必要としないアクティベーションは、Windows XP にインストールされている COM コンポーネントでは省略可能です。 サイド バイ サイド アセンブリをアプリケーションに追加する方法の詳細な手順については、次を参照してください。[を使用するサイド バイ サイド アセンブリ](https://msdn.microsoft.com/library/windows/desktop/aa376618.aspx)です。 > [!NOTE] > Side-by-side 実行は、ランタイムの複数のバージョンと、特定のバージョンのランタイムを使用するアプリケーションおよびコンポーネントの複数のバージョンを、同一のコンピューター上で同時に実行できるようにするための、.NET Framework の機能です。 Side-by-side 実行と side-by-side アセンブリは、side-by-side 機能を提供するための別個のメカニズムです。 ## 関連項目 [方法: 登録を必要としないアクティベーション用の .NET Framework ベースの COM コンポーネントを構成する](../../../docs/framework/interop/configure-net-framework-based-com-components-for-reg.md) - diff --git a/docs/framework/misc/security-and-public-read-only-array-fields.md b/docs/framework/misc/security-and-public-read-only-array-fields.md index fd20349630e..b1089d09715 100644 --- a/docs/framework/misc/security-and-public-read-only-array-fields.md +++ b/docs/framework/misc/security-and-public-read-only-array-fields.md @@ -1,39 +1,36 @@ ---- -title: "セキュリティとパブリックの読み取り専用配列フィールド | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -dev_langs: - - "VB" - - "CSharp" - - "C++" - - "jsharp" -helpviewer_keywords: - - "セキュリティ [.NET Framework], パブリックの読み取り専用配列フィールド" +--- +title: "セキュリティとパブリックの読み取り専用配列フィールド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +helpviewer_keywords: security [.NET Framework], public read-only array fields ms.assetid: 3df28dee-2a9f-40ff-9852-bfdbe59c27f3 -caps.latest.revision: 7 -author: "mairaw" -ms.author: "mairaw" -manager: "wpickett" -caps.handback.revision: 7 ---- -# セキュリティとパブリックの読み取り専用配列フィールド -読み取り専用のパブリック配列フィールドは変更できるため、マネージ ライブラリから読み取り専用のパブリック配列フィールドを使用して、アプリケーションの境界動作やセキュリティを定義しないでください。 +caps.latest.revision: "7" +author: mairaw +ms.author: mairaw +manager: wpickett +ms.openlocfilehash: ae2e9a7dd9e08344c254b52c7139c6d1dd2776a3 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# セキュリティとパブリックの読み取り専用配列フィールド +読み取り専用のパブリック配列フィールドを変更できるため、境界の動作や、アプリケーションのセキュリティを定義するのには、マネージ ライブラリからの読み取り専用のパブリック配列フィールドを使用しないでください。 -## 解説 - .NET Framework の一部のクラスには、プラットフォーム固有の境界パラメーターを含む読み取り専用のパブリック フィールドが含まれます。たとえば フィールドは、ファイル パス文字列で使用できない文字を記述する配列です。.NET Framework には、これに類似したフィールドが数多くあります。 +## コメント + .NET framework の一部のクラスには、プラットフォーム固有の境界パラメーターが含まれている読み取り専用のパブリック フィールドが含まれます。 たとえば、フィールドは、ファイルのパス文字列の許可されていない文字を表す配列。 多くの同様のフィールドは、.NET Framework 全体にわたって存在します。 - などのパブリックの読み取り専用フィールドの値は、コード、またはコードのアプリケーション ドメインを共有するコードを使用して変更できます。このような読み取り専用のパブリック配列フィールドを使用して、アプリケーションの境界動作を定義しないでください。このようなフィールドを使用してアプリケーションの境界動作を定義すると、悪意のあるコードによって境界定義が変更され、コードが悪用される恐れがあります。 + パブリックの読み取り専用フィールドの値と同様にコードや、コードのアプリケーション ドメインを共有しているコードで変更できます。 アプリケーションの境界の動作を定義するのに次のようにパブリックの読み取り専用の配列フィールドを使用する必要がありますできません。 作成する場合は、悪意のあるコードは境界の定義を変更し、予期しない方法でコードを利用できます。 - .NET Framework Version 2.0 以降では、パブリック配列フィールドを使用する代わりに、新しい配列を返すメソッドを使用します。たとえば、 フィールドを使用する代わりに メソッドを使用します。 + 2.0 と .NET Framework の以降のバージョンでは、パブリックの配列フィールドを使用する代わりに新しい配列を返すメソッドを使用してください。 使用せずになど、フィールドを使用してください、メソッドです。 - .NET Framework の型は、パブリック フィールドを使用して境界の種類を内部的に定義しないことに注意してください。代わりに .NET Framework では、個別のプライベート フィールドを使用します。パブリック フィールドの値を変更しても、.NET Framework の型の動作は変わりません。 + .NET Framework の型が内部的には境界の種類を定義するパブリック フィールドを使用しないことに注意してください。 代わりに、.NET Framework では、別のプライベート フィールドを使用します。 これらのパブリック フィールドの値を変更しても、.NET Framework の型の動作は変わりません。 -## 参照 - [安全なコーディングのガイドライン](../../../docs/standard/security/secure-coding-guidelines.md) \ No newline at end of file +## 関連項目 + [安全なコーディングのガイドライン](../../../docs/standard/security/secure-coding-guidelines.md) diff --git a/docs/framework/network-programming/best-practices-for-system-net-classes.md b/docs/framework/network-programming/best-practices-for-system-net-classes.md index ee43d6dd816..cbc72af06f0 100644 --- a/docs/framework/network-programming/best-practices-for-system-net-classes.md +++ b/docs/framework/network-programming/best-practices-for-system-net-classes.md @@ -1,4 +1,4 @@ ---- +--- title: "System.Net クラスのベスト プラクティス" ms.custom: ms.date: 03/30/2017 @@ -7,11 +7,6 @@ ms.reviewer: ms.suite: ms.tgt_pltfrm: ms.topic: article -dev_langs: -- VB -- CSharp -- C++ -- jsharp helpviewer_keywords: - sending data, best practices - requesting data from Internet, best practices @@ -21,17 +16,16 @@ helpviewer_keywords: - best practices, data requests - receiving data, best practices ms.assetid: 716decc6-5952-47b7-9c5a-ba6fc5698684 -caps.latest.revision: 9 +caps.latest.revision: "9" author: mcleblanc ms.author: markl manager: markl -ms.translationtype: HT -ms.sourcegitcommit: 306c608dc7f97594ef6f72ae0f5aaba596c936e1 -ms.openlocfilehash: 4fb997efc1ba23620cad4a63bd7fa683020a9056 -ms.contentlocale: ja-jp -ms.lasthandoff: 08/21/2017 - ---- +ms.openlocfilehash: e50df22f66d4d55298aad5f3cc501dfb39ffcd9a +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- # System.Net クラスのベスト プラクティス 次の推奨事項は、 に含まれるクラスを最大限に活用するのに役立ちます。 @@ -39,7 +33,7 @@ ms.lasthandoff: 08/21/2017 - **System.Net** クラスを使用するサーバー上で実行する ASP.NET アプリケーションを作成する場合、一般に、パフォーマンスを考慮して、非同期メソッドを および に対して使用することをお勧めします。 -- インターネット リソースに対して開いている接続の数が、ネットワークのパフォーマンスやスループットに大きく影響する場合があります。 既定では、**System.Net** は、各ホストのアプリケーションごとに 2 つの接続を使用します。 アプリケーションの プロパティを設定すると、特定のホストでこの数を増やすことができます。 プロパティを設定すると、すべてのホストでこの既定値を増やすことができます。 +- インターネット リソースに対して開いている接続の数が、ネットワークのパフォーマンスやスループットに大きく影響する場合があります。 既定では、**System.Net** は、各ホストのアプリケーションごとに 2 つの接続を使用します。 アプリケーションの プロパティを設定すると、特定のホストでこの数を増やすことができます。 プロパティを設定すると、すべてのホストでこの既定値を増やすことができます。 - ソケット レベルのプロトコルを作成する場合は、に直接書き込むのではなく、可能な限り、 または を使用するようにしてください。 これら 2 つのクライアント クラスは TCP ソケットおよび UDP ソケットの作成をカプセル化するため、接続の詳細を処理する必要がなくなります。 @@ -47,4 +41,3 @@ ms.lasthandoff: 08/21/2017 ## 関連項目 [.NET Framework のネットワーク プログラミング](../../../docs/framework/network-programming/index.md) - diff --git a/docs/framework/network-programming/how-to-register-a-custom-protocol-using-webrequest.md b/docs/framework/network-programming/how-to-register-a-custom-protocol-using-webrequest.md index f1b0ad9ece4..0b34859cbd2 100644 --- a/docs/framework/network-programming/how-to-register-a-custom-protocol-using-webrequest.md +++ b/docs/framework/network-programming/how-to-register-a-custom-protocol-using-webrequest.md @@ -1,4 +1,4 @@ ---- +--- title: "方法: WebRequest を使用してカスタム プロトコルを登録する" ms.custom: ms.date: 03/30/2017 @@ -8,26 +8,23 @@ ms.suite: ms.tgt_pltfrm: ms.topic: article dev_langs: -- VB -- CSharp -- C++ -- jsharp +- csharp +- vb ms.assetid: 98ddbdb9-66b1-4080-92ad-51f5c447fcf8 -caps.latest.revision: 11 +caps.latest.revision: "11" author: mcleblanc ms.author: markl manager: markl -ms.translationtype: HT -ms.sourcegitcommit: 306c608dc7f97594ef6f72ae0f5aaba596c936e1 -ms.openlocfilehash: 4ab725a2ef25c0b5898c9a9788f27781b0ef0ef7 -ms.contentlocale: ja-jp -ms.lasthandoff: 08/21/2017 - ---- -# 方法: WebRequest を使用してカスタム プロトコルを登録する +ms.openlocfilehash: 4fdb1188aeb7fd754ab21a268070830f55347441 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# 方法: WebRequest を使用してカスタム プロトコルを登録する この例では、他の場所で定義されているプロトコル固有のクラスを登録する方法を示します。 この例では、`CustomWebRequestCreator` は、`CustomWebRequest` オブジェクトを返す **Create** メソッドを実装するユーザー実装のオブジェクトです。 このコード例では、カスタム プロトコルを実装する `CustomWebRequest` コードが既に作成されているものとします。 -## 例 +## 例 ```csharp WebRequest.RegisterPrefix("custom", new CustomWebRequestCreator()); @@ -39,11 +36,10 @@ WebRequest.RegisterPrefix("custom", New CustomWebRequestCreator()) Dim req As WebRequest = WebRequest.Create("custom://customHost.contoso.com/") ``` -## コードのコンパイル +## コードのコンパイル この例で必要な要素は次のとおりです。 名前空間への参照。 -## 関連項目 +## 関連項目 [プラグ可能なプロトコルのプログラミング](../../../docs/framework/network-programming/programming-pluggable-protocols.md) - diff --git a/docs/framework/tools/caspol-exe-code-access-security-policy-tool.md b/docs/framework/tools/caspol-exe-code-access-security-policy-tool.md index fdf0d9b7006..ee0ff0b5df1 100644 --- a/docs/framework/tools/caspol-exe-code-access-security-policy-tool.md +++ b/docs/framework/tools/caspol-exe-code-access-security-policy-tool.md @@ -1,19 +1,13 @@ ---- +--- title: "Caspol.exe (コード アクセス セキュリティ ポリシー ツール)" ms.custom: ms.date: 03/30/2017 ms.prod: .net-framework ms.reviewer: ms.suite: -ms.technology: -- dotnet-clr +ms.technology: dotnet-clr ms.tgt_pltfrm: ms.topic: article -dev_langs: -- VB -- CSharp -- C++ -- jsharp helpviewer_keywords: - permission sets, modifying security policy - security policy [.NET Framework], Code Access Security Policy tool @@ -28,17 +22,16 @@ helpviewer_keywords: - security policy [.NET Framework], modifying - manually editing security configuration files ms.assetid: d2bf6123-7b0c-4e60-87ad-a39a1c3eb2e0 -caps.latest.revision: 44 +caps.latest.revision: "44" author: rpetrusha ms.author: ronpet manager: wpickett +ms.openlocfilehash: 71f0a8c8d0e5e09cb6f39e5b8b104c0848c4d8ce +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a ms.translationtype: HT -ms.sourcegitcommit: 306c608dc7f97594ef6f72ae0f5aaba596c936e1 -ms.openlocfilehash: 53cb4e7ffbac9a149b9b83b92141b7544734683e -ms.contentlocale: ja-jp -ms.lasthandoff: 07/28/2017 - ---- +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- # Caspol.exe (コード アクセス セキュリティ ポリシー ツール) ユーザーと管理者は、コード アクセス セキュリティ (CAS) ポリシー ツール (Caspol.exe) を使用して、コンピューター ポリシー レベル、ユーザー ポリシー レベル、およびエンタープライズ ポリシー レベルのセキュリティ ポリシーを変更できます。 @@ -65,24 +58,24 @@ caspol [options] |**-addfulltrust** *assembly_file*

または

**-af** *assembly_file*|カスタム セキュリティ オブジェクト (カスタム アクセス許可またはカスタム メンバーシップ条件) を実装するアセンブリを、特定のポリシー レベルの完全信頼アセンブリの一覧に追加します。 引数 *assembly_file* は、追加するアセンブリを指定します。 このファイルは、[厳密な名前](../../../docs/framework/app-domains/strong-named-assemblies.md)で署名する必要があります。 アセンブリに厳密な名前で署名するには、[厳密名ツール (Sn.exe)](../../../docs/framework/tools/sn-exe-strong-name-tool.md) を使用します。

カスタム アクセス許可を含むアクセス許可セットをポリシーに追加するたびに、そのカスタム アクセス許可を実装するアセンブリを、該当するポリシー レベルの完全信頼一覧に追加する必要があります。 セキュリティ ポリシー (コンピューター ポリシーなど) の中で使用されるカスタム セキュリティ オブジェクト (カスタム コード グループやメンバーシップ条件など) を実装するすべてのアセンブリを、完全信頼アセンブリの一覧に常に追加する必要があります。 **注意:** カスタム セキュリティ オブジェクトを実装するアセンブリが他のアセンブリを参照している場合は、参照先アセンブリを最初に完全信頼アセンブリの一覧に追加する必要があります。 Visual Basic、C++、および JScript を使用して作成されたカスタム セキュリティ オブジェクトは、それぞれ Microsoft.VisualBasic.dll、Microsoft.VisualC.dll、Microsoft.JScript.dll をこの順で参照します。 これらのアセンブリは、既定では、完全な信頼を持つアセンブリのリストには含まれていません。 カスタム セキュリティ オブジェクトを追加する前に、適切なアセンブリを完全な信頼のリストに追加する必要があります。 これができない場合は、セキュリティ システムが壊れ、すべてのアセンブリの読み込みに失敗します。 この状況では、Caspol.exe **-all -reset** オプションを使用してもセキュリティを修復できません。 セキュリティを修復するには、セキュリティ ファイルを手動で編集し、カスタム セキュリティ オブジェクトを削除する必要があります。| |**-addgroup** {*parent_label | parent_name*} *mship pset_name* [*flags*]

または

**-ag** {*parent_label | parent_name*} *mship pset_name* [*flags*]|新しいコード グループをコード グループ階層に追加します。 *parent_label* または *parent_name* を指定できます。 *parent_label* 引数は、追加されているコード グループの親である、コード グループのラベル (1 や 1.1 など) を指定します。 引数 *parent_name* は、追加するコード グループの親となるコード グループの名前を指定します。 *parent_label* と *parent_name* は交換して使用できるため、Caspol.exe がこの 2 つを区別できる必要があります。 したがって、*parent_name* の先頭を数字にすることはできません。 また、*parent_name* に含めることができるのは、A-Z、0-9、およびアンダースコア文字だけです。

引数 *mship* は、新しいコード グループのメンバーシップ条件を指定します。 詳細については、このセクションの *mship* 引数の表を参照してください。

引数 *pset_name* は、新しいコード グループと関連付けられるアクセス許可セットの名前です。 新しいグループに 1 つ以上の *flags* を設定することもできます。 詳細については、このセクションの *flags* 引数の表を参照してください。| |**-addpset** {*psfile* | *psfile* p*set_name*}

または

**-ap** {*named*_*psfile* | *psfile* *pset_name*}|新しい名前付きアクセス許可セットをポリシーに追加します。 アクセス許可セットは XML で編集し、.xml ファイルとして格納する必要があります。 XML ファイルにアクセス許可セットの名前が含まれる場合は、そのファイル (*psfile*) だけが指定されます。 XML ファイルにアクセス許可セットの名前が含まれない場合は、XML ファイルの名前 (*psfile*) とアクセス許可セットの名前 (*pset_name*) の両方を指定する必要があります。

アクセス許可セットで使用するすべてのアクセス許可を、グローバル アセンブリ キャッシュ内にあるアセンブリに定義する必要があります。| -|**-a**[**ll**]|このオプションの後に続くすべてのオプションを、コンピューター、ユーザー、エンタープライズの各ポリシーに適用します。 **-all** オプションは、常に現在ログオンしているユーザーのポリシーを参照します。 現在のユーザー以外のユーザーのポリシーの参照方法については **-customall** オプションを参照してください。| +|**-a****[ll]**|このオプションの後に続くすべてのオプションを、コンピューター、ユーザー、エンタープライズの各ポリシーに適用します。 **-all** オプションは、常に現在ログオンしているユーザーのポリシーを参照します。 現在のユーザー以外のユーザーのポリシーの参照方法については **-customall** オプションを参照してください。| |**-chggroup** {*label |name*} {*mship* | *pset_name* |

*flags* `}`

または

**-cg** {*label |name*} {*mship* | *pset_name* |

*flags* `}`|コード グループのメンバーシップ条件、アクセス許可セット、**exclusive**、**levelfinal**、**name**、**description** の各フラグの設定を変更します。 *label* または *name* を指定できます。 *label* 引数は、コード グループのラベル (1 や 1.1 など) を指定します。 *name* 引数は、変更するコード グループの名前を指定します。 *label* と *name* は交換して使用できるため、Caspol.exe がこの 2 つを区別できる必要があります。 したがって、*name* の先頭を数字にすることはできません。 また、*name* に含めることができるのは、A-Z、0-9、およびアンダースコア文字だけです。

引数 *pset_name* は、コード グループと関連付けるアクセス許可セットの名前を指定します。 引数 *mship* および *flags* については、このセクションで後述する表を参照してください。| |**-chgpset** *psfile pset_name*

または

**-cp** *psfile pset_name*|名前付きアクセス許可セットを変更します。 引数 *psfile* は、アクセス許可セットの新しい定義を指定します。この定義はシリアル化された XML 形式のアクセス許可セット ファイルです。 引数 *pset_name* は、変更するアクセス許可セットの名前を指定します。| |**-customall** *path*

または

**-ca** *path*|このオプションの後に続くすべてのオプションを、コンピューター、エンタープライズ、指定したカスタム ユーザーの各ポリシーに適用します。 カスタム ユーザーのセキュリティ構成ファイルの位置を引数 *path* で指定する必要があります。| -|**-cu**[**stomuser**] *path*|現在実行中の Caspol.exe を実行したユーザーに属さないカスタム ユーザー ポリシーを管理できます。 カスタム ユーザーのセキュリティ構成ファイルの位置を引数 *path* で指定する必要があります。| +|**-cu****[stomuser]** *path*|現在実行中の Caspol.exe を実行したユーザーに属さないカスタム ユーザー ポリシーを管理できます。 カスタム ユーザーのセキュリティ構成ファイルの位置を引数 *path* で指定する必要があります。| |**-enterprise**

または

**-en**|このオプションの後に続くすべてのオプションを、エンタープライズ レベル ポリシーに適用します。 エンタープライズ管理者ではないユーザーは、エンタープライズ ポリシーを変更するための十分な権限を持ちませんが、参照はできます。 エンタープライズ以外の場合、既定では、このポリシーがコンピューター ポリシーやユーザー ポリシーに干渉することはありません。| -|**-e**[**xecution**] {**on** | **off**}|コードの実行が開始される前に実行許可を確認する機構のオンとオフを切り替えます。 **メモ:** このスイッチは、[!INCLUDE[net_v40_short](../../../includes/net-v40-short-md.md)] 以降のバージョンでは削除されています。 詳細については、「[セキュリティの変更点](../../../docs/framework/security/security-changes.md)」を参照してください。| -|**-f**[**orce**]|ツールの自己破棄テストを行わず、ユーザーに指定されたとおりにポリシーを変更します。 通常、Caspol.exe は、ポリシーを変更した結果 Caspol.exe 自体の適切な動作が妨げられることにならないかどうかをチェックします。妨げられる場合は、Caspol.exe は変更されたポリシーを保存せず、エラー メッセージを表示します。 Caspol.exe の動作を妨げることになっても強制的に Caspol.exe にポリシーを変更する場合は、**–force** オプションを使用します。| -|**-h**[**elp**]|Caspol.exe のコマンド構文とオプションを表示します。| -|**-l**[**ist**]|指定されたコンピューター、ユーザー、エンタープライズ、またはすべてのポリシー レベルにかかわる、コード グループの階層とアクセス許可セットの一覧を表示します。 Caspol.exe は、最初にコード グループのラベルを、次に (null でない場合) 名前を表示します。| +|**-e****[xecution]** {**on** | **off**}|コードの実行が開始される前に実行許可を確認する機構のオンとオフを切り替えます。 **メモ:** このスイッチは、[!INCLUDE[net_v40_short](../../../includes/net-v40-short-md.md)] 以降のバージョンでは削除されています。 詳細については、「[セキュリティの変更点](../../../docs/framework/security/security-changes.md)」を参照してください。| +|**-f****[orce]**|ツールの自己破棄テストを行わず、ユーザーに指定されたとおりにポリシーを変更します。 通常、Caspol.exe は、ポリシーを変更した結果 Caspol.exe 自体の適切な動作が妨げられることにならないかどうかをチェックします。妨げられる場合は、Caspol.exe は変更されたポリシーを保存せず、エラー メッセージを表示します。 Caspol.exe の動作を妨げることになっても強制的に Caspol.exe にポリシーを変更する場合は、**–force** オプションを使用します。| +|**-h****[elp]**|Caspol.exe のコマンド構文とオプションを表示します。| +|**-l****[ist]**|指定されたコンピューター、ユーザー、エンタープライズ、またはすべてのポリシー レベルにかかわる、コード グループの階層とアクセス許可セットの一覧を表示します。 Caspol.exe は、最初にコード グループのラベルを、次に (null でない場合) 名前を表示します。| |**-listdescription**

または

**-ld**|指定されたポリシー レベルのすべてのコード グループの説明を一覧表示します。| |**-listfulltrust**

または

**-lf**|指定されたポリシー レベルの完全信頼アセンブリ一覧の内容を一覧表示します。| |**-listgroups**

または

**-lg**|指定されたポリシー レベルまたはすべてのポリシー レベルのコード グループを表示します。 Caspol.exe は、最初にコード グループのラベルを、次に (null でない場合) 名前を表示します。| |**-listpset** または **-lp**|指定されたポリシー レベルまたはすべてのポリシー レベルのアクセス許可セットを表示します。| -|**-m**[**achine**]|このオプションの後に続くすべてのオプションをコンピューター レベル ポリシーに適用します。 管理者ではないユーザーは、コンピューター ポリシーを変更するための十分な権限を持ちませんが、参照はできます。 管理者の場合は、**-machine** が既定値です。| +|**-m****[achine]**|このオプションの後に続くすべてのオプションをコンピューター レベル ポリシーに適用します。 管理者ではないユーザーは、コンピューター ポリシーを変更するための十分な権限を持ちませんが、参照はできます。 管理者の場合は、**-machine** が既定値です。| |**-polchgprompt** {**on** | **off**}

または

**-pp** {**on** | **off**}|ポリシーを変更するオプションを使用して、Caspol.exe が実行されるたびに表示されるプロンプトを有効または無効にします。| |**-quiet**

または

**-q**|ポリシーを変更するオプションに対して通常表示されるプロンプトを一時的に無効にします。 グローバル変更プロンプトの設定は変更されません。 このオプションは、すべての Caspol.exe コマンドに対してプロンプトを無効にすることを避けるため、単一のコマンドに対してだけ使用してください。| -|**-r**[**ecover**]|バックアップ ファイルからポリシーを復元します。 ポリシーが変更されるたびに、古いポリシーが Caspol.exe によってバックアップ ファイルの中に格納されます。| +|**-r****[ecover]**|バックアップ ファイルからポリシーを復元します。 ポリシーが変更されるたびに、古いポリシーが Caspol.exe によってバックアップ ファイルの中に格納されます。| |**-remfulltrust** *assembly_file*

または

**-rf** *assembly_file*|ポリシー レベルの完全信頼一覧からアセンブリを削除します。 この操作を実行する必要があるのは、カスタム アクセス許可を含むアクセス許可セットがポリシーによって使用されなくなった場合です。 ただし、カスタム アクセス許可を実装するアセンブリを完全信頼一覧から削除するのは、そのアセンブリが、まだ使用されている他のカスタム アクセス許可を実装していない場合に限ります。 一覧からアセンブリを削除するときは、そのアセンブリが依存している他のすべてのアセンブリも削除する必要があります。| |**-remgroup** {*label |name*}

または

**-rg** {l*abel | name*}|ラベルまたは名前で指定したコード グループを削除します。 指定したコード グループが子コード グループを持つ場合は、Caspol.exe によってすべての子コード グループも削除されます。| |**-rempset** *pset_name*

または

**-rp** *pset_name*|指定したアクセス許可セットをポリシーから削除します。 引数 *pset_name* は、削除するアクセス許可セットを指定します。 Caspol.exe がアクセス許可セットを削除するのは、そのアクセス許可セットがどのコード グループにも関連付けられていない場合だけです。 既定の (組み込み) アクセス許可セットは削除できません。| @@ -90,8 +83,8 @@ caspol [options] |**-resetlockdown**

または

**-rsld**|ポリシーを既定の状態のより制限されたバージョンに戻してディスクに永続化します。前のコンピューター ポリシーのバックアップを作成し、`security.config.bac` というファイルに永続化します。 ロック ダウンされているポリシーは、`Local Intranet`、`Trusted Sites`、および `Internet` の各ゾーンに属し、対応するコード グループに子コード グループがないコードにアクセスを許可しないことを除いて、既定のポリシーと同じです。| |**-resolvegroup** *assembly_file*

または

**-rsg** *assembly_file*|特定のアセンブリ (*assembly_file*) が属するコード グループを表示します。 既定では、このオプションは、アセンブリが属するコンピューター、ユーザー、エンタープライズの各ポリシー レベルを表示します。 1 つのポリシー レベルだけを参照するには、このオプションと共に **-machine**、**-user**、または **-enterprise** のいずれかのオプションを使用します。| |**-resolveperm** *assembly_file*

または

**-rsp** *assembly_file*|アセンブリの実行が許可されていた場合は、指定した (または既定の) レベルのセキュリティ ポリシーによってそのアセンブリに与えられるすべてのアクセス許可を表示します。 引数 *assembly_file* はアセンブリを指定します。 **-all** オプションを指定すると、Caspol.exe は、ユーザー ポリシー、コンピューター ポリシー、およびエンタープライズ ポリシーに基づいて、アセンブリに与えられるアクセス許可を計算します。それ以外の場合は、既定の動作規則が適用されます。| -|**-s**[**ecurity**] {**on** | **off**}|コード アクセス セキュリティのオンとオフを切り替えます。 **-s off** オプションを指定しても、ロール ベース セキュリティは無効になりません。 **メモ:** このスイッチは、[!INCLUDE[net_v40_short](../../../includes/net-v40-short-md.md)] 以降のバージョンでは削除されています。 詳細については、「[セキュリティの変更点](../../../docs/framework/security/security-changes.md)」を参照してください。 **注意:** コード アクセス セキュリティを無効にすると、すべてのコード アクセス要求が成功します。 コード アクセス セキュリティを無効にすると、システムは、ウイルスやワームなどの悪意のあるコードの攻撃を受けやすくなります。 セキュリティをオフにすると、パフォーマンスは多少向上しますが、他のセキュリティ対策を講じて、システム セキュリティ全体が損なわれていないことを確認した場合にだけ、オフにしてください。 その他のセキュリティ対策の例としては、公衆ネットワークからの切断、コンピューターの物理的な保護などがあります。| -|**-u**[**ser**]|このオプションの後に続くすべてのオプションを、Caspol.exe を実行したユーザーにかかわるユーザー レベル ポリシーに適用します。 管理者以外のユーザーの場合は、**-user** が既定値です。| +|**-s****[ecurity]** {**on** | **off**}|コード アクセス セキュリティのオンとオフを切り替えます。 **-s off** オプションを指定しても、ロール ベース セキュリティは無効になりません。 **メモ:** このスイッチは、[!INCLUDE[net_v40_short](../../../includes/net-v40-short-md.md)] 以降のバージョンでは削除されています。 詳細については、「[セキュリティの変更点](../../../docs/framework/security/security-changes.md)」を参照してください。 **注意:** コード アクセス セキュリティを無効にすると、すべてのコード アクセス要求が成功します。 コード アクセス セキュリティを無効にすると、システムは、ウイルスやワームなどの悪意のあるコードの攻撃を受けやすくなります。 セキュリティをオフにすると、パフォーマンスは多少向上しますが、他のセキュリティ対策を講じて、システム セキュリティ全体が損なわれていないことを確認した場合にだけ、オフにしてください。 その他のセキュリティ対策の例としては、公衆ネットワークからの切断、コンピューターの物理的な保護などがあります。| +|**-u****[ser]**|このオプションの後に続くすべてのオプションを、Caspol.exe を実行したユーザーにかかわるユーザー レベル ポリシーに適用します。 管理者以外のユーザーの場合は、**-user** が既定値です。| |**-?**|Caspol.exe のコマンド構文とオプションを表示します。| コード グループのメンバーシップ条件を指定する引数 *mship* は、**-addgroup** オプションおよび **-chggroup** オプションと併用できます。 各引数 *mship* は .NET Framework クラスとして実装されます。 *mship* を指定するには、次のいずれかを使用します。 @@ -128,9 +121,9 @@ caspol [options] 名前付きアクセス許可セットを参照する場合は、名前を使用します。 **–list** オプションでは、最初にコード グループの一覧、次にそのポリシーの中で利用できる名前付きアクセス許可セットの一覧が表示されます。 ## Caspol.exe の動作 - **-s**[**ecurity**] {**on** | **off**} を除くすべてのオプションが、Caspol.exe と共にインストールされたバージョンの .NET Framework を使用します。 あるバージョンのランタイムと共にインストールされた Caspol.exe を実行する場合、変更内容はそのバージョンだけに適用されます。** その他のランタイムが共存する場合、それらのランタイムは影響を受けません。 特定のランタイム バージョンのディレクトリに切り替えずに Caspol.exe をコマンド ラインで実行する場合、Caspol.exe はパスに含まれる最初のランタイム バージョン (通常は最後にインストールされたランタイム バージョン) のディレクトリから実行されます。 + **-s****[ecurity]** {**on** | **off**} を除くすべてのオプションが、Caspol.exe と共にインストールされたバージョンの .NET Framework を使用します。 *あるバージョン*のランタイムと共にインストールされた Caspol.exe を実行する場合、変更内容はそのバージョンだけに適用されます。 その他のランタイムが共存する場合、それらのランタイムは影響を受けません。 特定のランタイム バージョンのディレクトリに切り替えずに Caspol.exe をコマンド ラインで実行する場合、Caspol.exe はパスに含まれる最初のランタイム バージョン (通常は最後にインストールされたランタイム バージョン) のディレクトリから実行されます。 - **-s**[**ecurity**] {**on** | **off**} オプションは、コンピューター全体に対する操作です。 コード アクセス セキュリティをオフにすると、すべてのマネージ コードおよびコンピューター上のすべてのユーザーに対するセキュリティ チェックが中止されます。 side-by-side 実行バージョンの .NET Framework がインストールされている場合は、このコマンドによってコンピューターにインストールされているすべてのバージョンのセキュリティがオフになります。 **-list** オプションを使用するとセキュリティがオフになっていることが示されますが、他のユーザーに対してセキュリティがオフになっていることが明確に示されることはありません。 + **-s****[ecurity]** {**on** | **off**} オプションは、コンピューター全体に対する操作です。 コード アクセス セキュリティをオフにすると、すべてのマネージ コードおよびコンピューター上のすべてのユーザーに対するセキュリティ チェックが中止されます。 side-by-side 実行バージョンの .NET Framework がインストールされている場合は、このコマンドによってコンピューターにインストールされているすべてのバージョンのセキュリティがオフになります。 **-list** オプションを使用するとセキュリティがオフになっていることが示されますが、他のユーザーに対してセキュリティがオフになっていることが明確に示されることはありません。 管理者の権限を持たないユーザーが Caspol.exe を実行する場合、**–machine** オプションが指定されていない限り、すべてのオプションはユーザー レベル ポリシーを参照します。 管理者が Caspol.exe を実行する場合、**–user** オプションが指定されていない限り、すべてのオプションはコンピューター ポリシーを参照します。 @@ -262,6 +255,5 @@ caspol -all -resolveperm testassembly ``` ## 関連項目 - [ツール](../../../docs/framework/tools/index.md) + [ツール](../../../docs/framework/tools/index.md) [コマンド プロンプト](../../../docs/framework/tools/developer-command-prompt-for-vs.md) - diff --git a/docs/framework/unmanaged-api/debugging/icordebugreferencevalue-setvalue-method.md b/docs/framework/unmanaged-api/debugging/icordebugreferencevalue-setvalue-method.md new file mode 100644 index 00000000000..935a57bd7cf --- /dev/null +++ b/docs/framework/unmanaged-api/debugging/icordebugreferencevalue-setvalue-method.md @@ -0,0 +1,52 @@ +--- +title: "ICorDebugReferenceValue::SetValue メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: ICorDebugReferenceValue.SetValue +api_location: mscordbi.dll +api_type: COM +f1_keywords: ICorDebugReferenceValue::SetValue +helpviewer_keywords: +- SetValue method, ICorDebugReferenceValue interface [.NET Framework debugging] +- ICorDebugReferenceValue::SetValue method [.NET Framework debugging] +ms.assetid: 3d3f6eec-d772-401f-a028-1a2ecdc31e95 +topic_type: apiref +caps.latest.revision: "11" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 764b99b5687c171b0dcdbc7f8ca15493c182ff7b +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# ICorDebugReferenceValue::SetValue メソッド +指定されたメモリ アドレスを設定します。 つまり、このメソッドは、この ICorDebugReferenceValue オブジェクトを指すようを設定します。 + +## 構文 + +``` +HRESULT SetValue ( + [in] CORDB_ADDRESS value +); +``` + +#### パラメーター + `value` + [in]A`CORDB_ADDRESS`先であるオブジェクトのアドレスを指定する値`ICorDebugReferenceValue`ポイント。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** CorDebug.idl、CorDebug.h + + **ライブラリ:** CorGuids.lib + + **.NET framework のバージョン:**[!INCLUDE[net_current_v10plus](../../../../includes/net-current-v10plus-md.md)] diff --git a/docs/framework/unmanaged-api/hosting/iclrstrongname-strongnamesignaturegeneration-method.md b/docs/framework/unmanaged-api/hosting/iclrstrongname-strongnamesignaturegeneration-method.md new file mode 100644 index 00000000000..1d9cb58e4ca --- /dev/null +++ b/docs/framework/unmanaged-api/hosting/iclrstrongname-strongnamesignaturegeneration-method.md @@ -0,0 +1,92 @@ +--- +title: "ICLRStrongName::StrongNameSignatureGeneration メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: ICLRStrongName.StrongNameSignatureGeneration +api_location: mscoree.dll +api_type: COM +f1_keywords: ICLRStrongName::StrongNameSignatureGeneration +helpviewer_keywords: +- StrongNameSignatureGeneration method, ICLRStrongName interface [.NET Framework hosting] +- ICLRStrongName::StrongNameSignatureGeneration method [.NET Framework hosting] +ms.assetid: 4cdb1284-947a-4ed4-94c1-c5ff5cdfce56 +topic_type: apiref +caps.latest.revision: "7" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 739dc0b08955b774f7fa15c3c346ec889f717dd2 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# ICLRStrongName::StrongNameSignatureGeneration メソッド +指定したアセンブリの厳密な名前の署名を生成します。 + +## 構文 + +``` +HRESULT StrongNameSignatureGeneration ( + [in] LPCWSTR wszFilePath, + [in] LPCWSTR wszKeyContainer, + [in] BYTE *pbKeyBlob, + [in] ULONG cbKeyBlob, + [out] BYTE **ppbSignatureBlob, + [out] ULONG *pcbSignatureBlob +); +``` + +#### パラメーター + `wszFilePath` + [in]厳密な名前の署名の生成対象となるアセンブリのマニフェストを格納しているファイルへのパス。 + + `wszKeyContainer` + [in]公開/秘密キー ペアを格納するキー コンテナーの名前。 + + 場合`pbKeyBlob`が null、`wszKeyContainer`暗号化サービス プロバイダー (CSP) 内で有効なコンテナーを指定する必要があります。 この場合、コンテナーに格納されているキーのペアは、ファイルの署名に使用されます。 + + 場合`pbKeyBlob`が null でないと見なされますのキー ペア キー バイナリ ラージ オブジェクト (BLOB) に含まれています。 + + キーは、1024 ビットの Rivest-shamir-adleman (RSA) 署名キーである必要があります。 この時点では、その他の種類のキーはサポートされません。 + + `pbKeyBlob` + [in]公開/秘密キー ペアへのポインター。 Win32 によって作成された形式では、このペア`CryptExportKey`関数。 場合`pbKeyBlob`は null、によって指定されたキー コンテナー`wszKeyContainer`キー ペアを格納すると見なされます。 + + `cbKeyBlob` + [in]サイズをバイト単位での`pbKeyBlob`します。 + + `ppbSignatureBlob` + [out]共通言語ランタイムをするには、署名を返します場所へのポインター。 場合`ppbSignatureBlob`が null の場合、ランタイム、署名ファイルに格納で指定された`wszFilePath`です。 + + 場合`ppbSignatureBlob`が null でない、共通言語ランタイムは領域を割り当てますを返す、署名します。 呼び出し元を使用してこの領域を解放する必要があります、 [iclrstrongname::strongnamefreebuffer](../../../../docs/framework/unmanaged-api/hosting/iclrstrongname-strongnamefreebuffer-method.md)メソッドです。 + + `pcbSignatureBlob` + [out]返された署名のバイト単位のサイズ。 + +## 戻り値 + `S_OK`メソッドが正常に完了した場合それ以外の場合、失敗を示す HRESULT 値 (を参照してください[の共通 HRESULT 値](http://go.microsoft.com/fwlink/?LinkId=213878)一覧)。 + +## コメント + Null を指定する`wszFilePath`署名を作成することがなく、署名のサイズを計算します。 + + 署名があることができます、ファイルに直接格納または呼び出し元に返されます。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** MetaHost.h + + **ライブラリ:** MSCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v40plus](../../../../includes/net-current-v40plus-md.md)] + +## 関連項目 + [StrongNameSignatureGenerationEx メソッド](../../../../docs/framework/unmanaged-api/hosting/iclrstrongname-strongnamesignaturegenerationex-method.md) + [ICLRStrongName インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrstrongname-interface.md) diff --git a/docs/framework/unmanaged-api/hosting/ihostautoevent-wait-method.md b/docs/framework/unmanaged-api/hosting/ihostautoevent-wait-method.md new file mode 100644 index 00000000000..fc44b03ad7f --- /dev/null +++ b/docs/framework/unmanaged-api/hosting/ihostautoevent-wait-method.md @@ -0,0 +1,74 @@ +--- +title: "IHostAutoEvent::Wait メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: IHostAutoEvent.Wait +api_location: mscoree.dll +api_type: COM +f1_keywords: IHostAutoEvent::Wait +helpviewer_keywords: +- Wait method, IHostAutoEvent interface [.NET Framework hosting] +- IHostAutoEvent::Wait method [.NET Framework hosting] +ms.assetid: 535d51c5-9112-401b-8c36-85f35d7ee609 +topic_type: apiref +caps.latest.revision: "10" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 6a4900d1edc69ad00c98455d388714c2fd1a5156 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# IHostAutoEvent::Wait メソッド +現在の原因[IHostAutoEvent](../../../../docs/framework/unmanaged-api/hosting/ihostautoevent-interface.md)が所有するまで待機するインスタンスまたは指定された時間が経過時間。 + +## 構文 + +``` +HRESULT Wait ( + [in] DWORD dwMilliseconds, + [in] DWORD option +); +``` + +#### パラメーター + `dwMilliseconds` + [in]ミリ秒単位の数、現在`IHostAutoEvent`スレッドが無い場合は、戻る前にインスタンスが待機またはファイバーが所有権を取得します。 + + `option` + [in]いずれか、 [WAIT_OPTION](../../../../docs/framework/unmanaged-api/hosting/wait-option-enumeration.md)ホストが実行する場合は、この操作を指定する値は、操作がブロックされます。 + +## 戻り値 + +|HRESULT|説明| +|-------------|-----------------| +|S_OK|`Wait`正常に返されます。| +|HOST_E_CLRNOTAVAILABLE|共通言語ランタイム (CLR) が、プロセスに読み込まれていませんまたは CLR は、状態をマネージ コードを実行またはできないの呼び出しは正常に処理します。| +|HOST_E_TIMEOUT|呼び出しがタイムアウトしました。| +|HOST_E_NOT_OWNER|呼び出し元は、ロックを所有していません。| +|HOST_E_ABANDONED|イベントがキャンセルされましたブロックされたスレッドまたはファイバーが待機しています。| +|E_FAIL|不明な致命的なエラーが発生しました。 メソッドには、E_FAIL が返される、ときに、CLR は、プロセス内で使用可能ではなくなりました。 メソッドのホストに以降の呼び出しでは、HOST_E_CLRNOTAVAILABLE を返します。| +|HOST_E_DEADLOCK|ホストが、待機中にデッドロックを検出し、現在によって表されるイベント`IHostAutoEvent`デッドロックの対象としてインスタンス。| + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** MSCorEE.h + + **ライブラリ:** MSCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v20plus](../../../../includes/net-current-v20plus-md.md)] + +## 関連項目 + [ICLRSyncManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrsyncmanager-interface.md) + [IHostAutoEvent インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihostautoevent-interface.md) + [IHostManualEvent インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihostmanualevent-interface.md) + [IHostSyncManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihostsyncmanager-interface.md) diff --git a/docs/framework/unmanaged-api/hosting/ihostgcmanager-threadisblockingforsuspension-method.md b/docs/framework/unmanaged-api/hosting/ihostgcmanager-threadisblockingforsuspension-method.md new file mode 100644 index 00000000000..f263cbd9e33 --- /dev/null +++ b/docs/framework/unmanaged-api/hosting/ihostgcmanager-threadisblockingforsuspension-method.md @@ -0,0 +1,70 @@ +--- +title: "IHostGCManager::ThreadIsBlockingForSuspension メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: IHostGCManager.ThreadIsBlockingForSuspension +api_location: mscoree.dll +api_type: COM +f1_keywords: IHostGCManager::ThreadIsBlockingForSuspension +helpviewer_keywords: +- IHostGCManager::ThreadIsBlockingForSuspension method [.NET Framework hosting] +- ThreadIsBlockingForSuspension method [.NET Framework hosting] +ms.assetid: 2657d45d-26d2-4d0a-8473-32b652e3321d +topic_type: apiref +caps.latest.revision: "10" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 5ea5f110754b8b607673bcbd4060dee85cd5ca9f +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# IHostGCManager::ThreadIsBlockingForSuspension メソッド +メソッドの呼び出し元のスレッドは、ホストに通知のガベージ コレクションをブロックします。 + +## 構文 + +``` +HRESULT ThreadIsBlockingForSuspension (); +``` + +## 戻り値 + +|HRESULT|説明| +|-------------|-----------------| +|S_OK|`ThreadIsBlockingForSuspension`正常に返されます。| +|HOST_E_CLRNOTAVAILABLE|共通言語ランタイム (CLR) が、プロセスに読み込まれていませんまたは CLR は、状態をマネージ コードを実行またはできないの呼び出しは正常に処理します。| +|HOST_E_TIMEOUT|呼び出しがタイムアウトしました。| +|HOST_E_NOT_OWNER|呼び出し元は、ロックを所有していません。| +|HOST_E_ABANDONED|イベントがキャンセルされましたブロックされたスレッドまたはファイバーが待機しています。| +|E_FAIL|不明な致命的なエラーが発生しました。 メソッドには、E_FAIL が返される、ときに、CLR は、プロセス内で使用可能ではなくなりました。 メソッドのホストに以降の呼び出しでは、HOST_E_CLRNOTAVAILABLE を返します。| + +## コメント + CLR は呼び出し、通常、`ThreadIsBlockForSuspension`ホスト アンマネージ タスクのスレッドを再スケジュールする機会を提供する、ガベージ コレクションの準備のメソッドです。 + +> [!IMPORTANT] +> ホストは、タスクを再スケジュールへの呼び出し後のみ`ThreadIsBlockingForSuspension`です。 ランタイムの呼び出し後[SuspensionStarting](../../../../docs/framework/unmanaged-api/hosting/ihostgcmanager-suspensionstarting-method.md)ホストには、タスクが再スケジュールする必要があります。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** MSCorEE.h + + **ライブラリ:** MSCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v20plus](../../../../includes/net-current-v20plus-md.md)] + +## 関連項目 + [ICLRTask インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrtask-interface.md) + [ICLRTaskManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrtaskmanager-interface.md) + [IHostTask インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihosttask-interface.md) + [IHostTaskManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihosttaskmanager-interface.md) + [IHostGCManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihostgcmanager-interface.md) diff --git a/docs/framework/unmanaged-api/hosting/ihostmemorymanager-interface.md b/docs/framework/unmanaged-api/hosting/ihostmemorymanager-interface.md new file mode 100644 index 00000000000..c8a9fcbb43b --- /dev/null +++ b/docs/framework/unmanaged-api/hosting/ihostmemorymanager-interface.md @@ -0,0 +1,60 @@ +--- +title: "IHostMemoryManager インターフェイス" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: IHostMemoryManager +api_location: mscoree.dll +api_type: COM +f1_keywords: IHostMemoryManager +helpviewer_keywords: IHostMemoryManager interface [.NET Framework hosting] +ms.assetid: a945d439-3b34-4aa4-b575-8413dd7806ce +topic_type: apiref +caps.latest.revision: "13" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 415539be0dbed8e0cf3f9d6e5c79bf4cfac09fe2 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# IHostMemoryManager インターフェイス +標準の Win32 仮想メモリ関数を使用する代わりに、共通言語ランタイム (CLR) はホストを介して仮想メモリの要求を行うことができるようにするメソッドを提供します。 + +## メソッド + +|メソッド|説明| +|------------|-----------------| +|[AcquiredVirtualAddressSpace メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-acquiredvirtualaddressspace-method.md)|共通言語ランタイム (CLR) が、オペレーティング システムから指定されたメモリを取得したことをホストに通知します。| +|[CreateMAlloc メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-createmalloc-method.md)|インターフェイス ポインターを取得、 [IHostMAlloc](../../../../docs/framework/unmanaged-api/hosting/ihostmalloc-interface.md)ホストによって作成されたヒープからメモリの割り当てを要求するために使用するインスタンス。| +|[GetMemoryLoad メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-getmemoryload-method.md)|ホストで報告された、現在使用されている物理メモリの量を取得します。| +|[NeedsVirtualAddressSpace メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-needsvirtualaddressspace-method.md)|CLR が指定されたメモリを使用しようとしています。 しようとしていることをホストに通知します。| +|[RegisterMemoryNotificationCallback メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-registermemorynotificationcallback-method.md)|ホストが、現在のメモリ負荷、コンピューター上の CLR に通知するために呼び出すコールバック関数へのポインターを登録します。| +|[ReleasedVirtualAddressSpace メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-releasedvirtualaddressspace-method.md)|指定されたメモリを使用して、CLR が完了したことをホストに通知します。| +|[VirtualAlloc メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-virtualalloc-method.md)|対応する Win32 関数では、予約または呼び出し元のプロセス仮想アドレス空間内のページの領域をコミットの論理ラッパーとして機能します。| +|[VirtualFree メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-virtualfree-method.md)|解放、デコミット、または解放され、呼び出し元のプロセス仮想アドレス空間内のページの領域をデコミット、対応する Win32 関数の論理ラッパーとして機能します。| +|[VirtualProtect メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-virtualprotect-method.md)|対応する Win32 関数では、呼び出し元プロセスの仮想アドレス空間でコミットされたページの領域に保護を変更する論理ラッパーとして機能します。| +|[VirtualQuery メソッド](../../../../docs/framework/unmanaged-api/hosting/ihostmemorymanager-virtualquery-method.md)|対応する Win32 関数では、呼び出し元プロセスの仮想アドレス空間内のページの範囲に関する情報を取得する論理ラッパーとして機能します。| + +## コメント + `IHostMemoryManager`また、CLR ホストによって報告された、ヒープのメモリ要求を行うと、プロセスでは、メモリ不足のレベルを取得するためのポインターを取得するためのメソッドを提供します。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** MSCorEE.h + + **ライブラリ:** MSCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v20plus](../../../../includes/net-current-v20plus-md.md)] + +## 関連項目 + [IHostMalloc インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihostmalloc-interface.md) + [ホスト インターフェイス](../../../../docs/framework/unmanaged-api/hosting/hosting-interfaces.md) diff --git a/docs/framework/unmanaged-api/hosting/ihostsyncmanager-createmanualevent-method.md b/docs/framework/unmanaged-api/hosting/ihostsyncmanager-createmanualevent-method.md new file mode 100644 index 00000000000..bd33b778c81 --- /dev/null +++ b/docs/framework/unmanaged-api/hosting/ihostsyncmanager-createmanualevent-method.md @@ -0,0 +1,76 @@ +--- +title: "IHostSyncManager::CreateManualEvent メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: IHostSyncManager.CreateManualEvent +api_location: mscoree.dll +api_type: COM +f1_keywords: IHostSyncManager::CreateManualEvent +helpviewer_keywords: +- CreateManualEvent method [.NET Framework hosting] +- IHostSyncManager::CreateManualEvent method [.NET Framework hosting] +ms.assetid: 68661fbd-09cf-46dc-890b-e694f8a3880a +topic_type: apiref +caps.latest.revision: "12" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: b7b43a6b26c3788708419d3598e95bba1273dcb9 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# IHostSyncManager::CreateManualEvent メソッド +手動リセット イベント オブジェクトを作成します。 + +## 構文 + +``` +HRESULT CreateManualEvent ( + [in] BOOL bInitialState, + [out] IHostManualEvent **ppEvent +); +``` + +#### パラメーター + `bInitialState` + [in]`true`オブジェクトがシグナル状態、それ以外の場合、`false`です。 + + `ppEvent` + [out]アドレスへのポインター、 [IHostManualEvent](../../../../docs/framework/unmanaged-api/hosting/ihostmanualevent-interface.md)インスタンス、または null の場合、イベントを作成できませんでした。 + +## 戻り値 + +|HRESULT|説明| +|-------------|-----------------| +|S_OK|`CreateManualEvent`正常に返されます。| +|HOST_E_CLRNOTAVAILABLE|共通言語ランタイム (CLR) が、プロセスに読み込まれていませんまたは CLR は、状態をマネージ コードを実行またはできないの呼び出しは正常に処理します。| +|HOST_E_TIMEOUT|呼び出しがタイムアウトしました。| +|HOST_E_NOT_OWNER|呼び出し元は、ロックを所有していません。| +|HOST_E_ABANDONED|イベントがキャンセルされましたブロックされたスレッドまたはファイバーが待機しています。| +|E_FAIL|不明な致命的なエラーが発生しました。 メソッドには、E_FAIL が返される、ときに、CLR は、プロセス内で使用可能ではなくなりました。 メソッドのホストに以降の呼び出しでは、HOST_E_CLRNOTAVAILABLE を返します。| +|E_OUTOFMEMORY|十分なメモリは、要求されたイベント オブジェクトを作成できませんでした。| + +## コメント + `CreateManualEvent`作成、 `IHostManualEvent`、手動リセット イベント オブジェクトへの呼び出しを必要とする、 [ihostmanualevent::reset](../../../../docs/framework/unmanaged-api/hosting/ihostmanualevent-reset-method.md)を非シグナル状態に設定します。 `CreateManualEvent`Win32 をミラー化`CreateEvent`の値を持つ関数`true`向けに指定された、`bManualReset`パラメーター。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** MSCorEE.h + + **ライブラリ:** MSCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v20plus](../../../../includes/net-current-v20plus-md.md)] + +## 関連項目 + [ICLRSyncManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrsyncmanager-interface.md) + [IHostManualEvent インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihostmanualevent-interface.md) + [IHostSyncManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihostsyncmanager-interface.md) diff --git a/docs/framework/unmanaged-api/hosting/ihostsyncmanager-createsemaphore-method.md b/docs/framework/unmanaged-api/hosting/ihostsyncmanager-createsemaphore-method.md new file mode 100644 index 00000000000..30fb31a440f --- /dev/null +++ b/docs/framework/unmanaged-api/hosting/ihostsyncmanager-createsemaphore-method.md @@ -0,0 +1,80 @@ +--- +title: "IHostSyncManager::CreateSemaphore メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: IHostSyncManager.CreateSemaphore +api_location: mscoree.dll +api_type: COM +f1_keywords: IHostSyncManager::CreateSemaphore +helpviewer_keywords: +- CreateSemaphore method [.NET Framework hosting] +- IHostSyncManager::CreateSemaphore method [.NET Framework hosting] +ms.assetid: 37679e94-5ff9-4173-8fa5-457febeb89bf +topic_type: apiref +caps.latest.revision: "10" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 7c7e33e4f178a4fd51ae27912959d0e4edf30ecb +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# IHostSyncManager::CreateSemaphore メソッド +作成、 [IHostSemaphore](../../../../docs/framework/unmanaged-api/hosting/ihostsemaphore-interface.md)待機イベントのセマフォとして使用する共通言語ランタイム (CLR) のオブジェクト。 + +## 構文 + +``` +HRESULT CreateSemaphore ( + [in] DWORD dwInitial, + [in] DWORD dwMax, + [out] IHostSemaphore **ppSemaphore +); +``` + +#### パラメーター + `dwInitial` + [in]初期カウント`ppSemaphore`です。 + + `dwMax` + [in]最大カウント`ppSemaphore`です。 + + `ppSemaphore` + [out]アドレスへのポインター、`IHostSemaphore`インスタンス、または null の場合、セマフォを作成できませんでした。 + +## 戻り値 + +|HRESULT|説明| +|-------------|-----------------| +|S_OK|`CreateSemaphore`正常に返されます。| +|HOST_E_CLRNOTAVAILABLE|CLR が、プロセスに読み込まれていませんまたは CLR は、状態をマネージ コードを実行またはできないの呼び出しは正常に処理します。| +|HOST_E_TIMEOUT|呼び出しがタイムアウトしました。| +|HOST_E_NOT_OWNER|呼び出し元は、ロックを所有していません。| +|HOST_E_ABANDONED|イベントがキャンセルされましたブロックされたスレッドまたはファイバーが待機しています。| +|E_FAIL|不明な致命的なエラーが発生しました。 メソッドには、E_FAIL が返される、ときに、CLR は、プロセス内で使用可能ではなくなりました。 メソッドのホストに以降の呼び出しでは、HOST_E_CLRNOTAVAILABLE を返します。| +|E_OUTOFMEMORY|十分なメモリは、要求されたイベント オブジェクトを作成できませんでした。| + +## コメント + `CreateSemaphore`同じ名前を持つ Win32 関数を反映します。 `dwInitial`と`dwMax`パラメーターは、セマフォのカウントの同じセマンティクスを使用して、Win32 として`lInitialCount`と`lMaximumCount`パラメーター、それぞれします。 `dwInitial`0 以上にする必要がありますと`dwMax`、包括的です。 `dwMax`0 より大きくなければなりません。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** MSCorEE.h + + **ライブラリ:** MSCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v20plus](../../../../includes/net-current-v20plus-md.md)] + +## 関連項目 + [ICLRSyncManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrsyncmanager-interface.md) + [IHostSemaphore インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihostsemaphore-interface.md) + [IHostSyncManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihostsyncmanager-interface.md) diff --git a/docs/framework/unmanaged-api/hosting/ihosttaskmanager-leaveruntime-method.md b/docs/framework/unmanaged-api/hosting/ihosttaskmanager-leaveruntime-method.md new file mode 100644 index 00000000000..50d2e943f27 --- /dev/null +++ b/docs/framework/unmanaged-api/hosting/ihosttaskmanager-leaveruntime-method.md @@ -0,0 +1,85 @@ +--- +title: "IHostTaskManager::LeaveRuntime メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: IHostTaskManager.LeaveRuntime +api_location: mscoree.dll +api_type: COM +f1_keywords: IHostTaskManager::LeaveRuntime +helpviewer_keywords: +- IHostTaskManager::LeaveRuntime method [.NET Framework hosting] +- LeaveRuntime method [.NET Framework hosting] +ms.assetid: 43689cc4-e48e-46e5-a22d-bafd768b8759 +topic_type: apiref +caps.latest.revision: "12" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 326fa3d495cafe187f06e1e6a804cbe90fb12efd +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# IHostTaskManager::LeaveRuntime メソッド +現在実行中のタスクが共通言語ランタイム (CLR) のままにし、アンマネージ コードの入力があるホストに通知します。 + +> [!IMPORTANT] +> 対応する呼び出し[ihosttaskmanager::enterruntime](../../../../docs/framework/unmanaged-api/hosting/ihosttaskmanager-enterruntime-method.md)現在実行中のタスクがマネージ コードを再入力するホストに通知します。 + +## 構文 + +``` +HRESULT LeaveRuntime ( + [in] SIZE_T target +); +``` + +#### パラメーター + `target` + [in]アンマネージ関数を呼び出すのマップされたポータブル実行可能ファイル内のアドレス。 + +## 戻り値 + +|HRESULT|説明| +|-------------|-----------------| +|S_OK|`LeaveRuntime`正常に返されます。| +|HOST_E_CLRNOTAVAILABLE|CLR が、プロセスに読み込まれていませんまたは CLR は、状態をマネージ コードを実行またはできないの呼び出しは正常に処理します。| +|HOST_E_TIMEOUT|呼び出しがタイムアウトしました。| +|HOST_E_NOT_OWNER|呼び出し元は、ロックを所有していません。| +|HOST_E_ABANDONED|イベントがキャンセルされましたブロックされたスレッドまたはファイバーが待機しています。| +|E_FAIL|不明な致命的なエラーが発生しました。 メソッドには、E_FAIL が返される、ときに、CLR は、プロセス内で使用可能ではなくなりました。 メソッドのホストに以降の呼び出しでは、HOST_E_CLRNOTAVAILABLE を返します。| +|E_OUTOFMEMORY|十分なメモリがある要求の割り当てを完了します。| + +## コメント + アンマネージ コードとの間の呼び出しシーケンスは、入れ子にすることができます。 たとえば、次の表に仮想的な状況への呼び出しのシーケンス`LeaveRuntime`、 [ihosttaskmanager::reverseenterruntime](../../../../docs/framework/unmanaged-api/hosting/ihosttaskmanager-reverseenterruntime-method.md)、 [ihosttaskmanager::reverseleaveruntime](../../../../docs/framework/unmanaged-api/hosting/ihosttaskmanager-reverseleaveruntime-method.md)、および`IHostTaskManager::EnterRuntime`ホストが入れ子になったレイヤーを特定できるようにします。 + +|操作|対応するメソッドの呼び出し| +|------------|-------------------------------| +|マネージ Visual Basic 実行可能なプラットフォームを使用して、C で記述されたアンマネージ関数を呼び出します。|`IHostTaskManager::LeaveRuntime`| +|アンマネージ C 関数は、c# で記述されたマネージ DLL でメソッドを呼び出します。|`IHostTaskManager::ReverseEnterRuntime`| +|C# の場合、マネージ関数が C で記述された別のアンマネージ関数を呼び出してもプラットフォーム呼び出しを使用します。|`IHostTaskManager::LeaveRuntime`| +|2 番目のアンマネージ関数では、c# 関数への実行を返します。|`IHostTaskManager::EnterRuntime`| +|C# 関数は、最初のアンマネージ関数に実行を返します。|`IHostTaskManager::ReverseLeaveRuntime`| +|1 つ目のアンマネージ関数では、Visual Basic プログラムに実行を返します。|`IHostTaskManager::EnterRuntime`| + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** MSCorEE.h + + **ライブラリ:** MSCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v20plus](../../../../includes/net-current-v20plus-md.md)] + +## 関連項目 + [ICLRTask インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrtask-interface.md) + [ICLRTaskManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrtaskmanager-interface.md) + [IHostTask インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihosttask-interface.md) + [IHostTaskManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihosttaskmanager-interface.md) diff --git a/docs/framework/unmanaged-api/hosting/ihosttaskmanager-sleep-method.md b/docs/framework/unmanaged-api/hosting/ihosttaskmanager-sleep-method.md new file mode 100644 index 00000000000..76b190d1d4c --- /dev/null +++ b/docs/framework/unmanaged-api/hosting/ihosttaskmanager-sleep-method.md @@ -0,0 +1,76 @@ +--- +title: "IHostTaskManager::Sleep メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: IHostTaskManager.Sleep +api_location: mscoree.dll +api_type: COM +f1_keywords: IHostTaskManager::Sleep +helpviewer_keywords: +- IHostTaskManager::Sleep method [.NET Framework hosting] +- Sleep method, IHostTaskManager interface [.NET Framework hosting] +ms.assetid: f67d25f3-9199-4c5f-b1e8-1c819243cfd5 +topic_type: apiref +caps.latest.revision: "12" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: cc26ca7d226c4529b0bc702567e774f2f98b085d +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# IHostTaskManager::Sleep メソッド +現在のタスクがスリープ状態にしようとしていることをホストに通知します。 + +## 構文 + +``` +HRESULT Sleep ( + [in] DWORD dwMilliseconds, + [in] DWORD option +); +``` + +#### パラメーター + `dwMilliseconds` + [in]スレッドがスリープ状態をミリ秒単位の時間間隔。 + + `option` + [in]1 つ、 [WAIT_OPTION](../../../../docs/framework/unmanaged-api/hosting/wait-option-enumeration.md)ホストが実行する場合は、このアクションを示す列挙値は、アクション ブロックします。 + +## 戻り値 + +|HRESULT|説明| +|-------------|-----------------| +|S_OK|`Sleep`正常に返されます。| +|HOST_E_CLRNOTAVAILABLE|共通言語ランタイム (CLR) が、プロセスに読み込まれていませんまたは CLR は、状態をマネージ コードを実行またはできないの呼び出しは正常に処理します。| +|HOST_E_TIMEOUT|呼び出しがタイムアウトしました。| +|HOST_E_NOT_OWNER|呼び出し元は、ロックを所有していません。| +|HOST_E_ABANDONED|イベントがキャンセルされましたブロックされたスレッドまたはファイバーが待機しています。| +|E_FAIL|不明な致命的なエラーが発生しました。 メソッドには、E_FAIL が返される、ときに、CLR は、プロセス内で使用可能ではなくなりました。 メソッドのホストに以降の呼び出しでは、HOST_E_CLRNOTAVAILABLE を返します。| + +## コメント + CLR は呼び出し、通常`IHostTaskManager::Sleep`ときユーザー コードから呼び出されます。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** MSCorEE.h + + **ライブラリ:** MSCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v20plus](../../../../includes/net-current-v20plus-md.md)] + +## 関連項目 + [ICLRTask インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrtask-interface.md) + [ICLRTaskManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/iclrtaskmanager-interface.md) + [IHostTask インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihosttask-interface.md) + [IHostTaskManager インターフェイス](../../../../docs/framework/unmanaged-api/hosting/ihosttaskmanager-interface.md) diff --git a/docs/framework/unmanaged-api/metadata/imetadataimport-findtyperef-method.md b/docs/framework/unmanaged-api/metadata/imetadataimport-findtyperef-method.md new file mode 100644 index 00000000000..dd5f7c6756a --- /dev/null +++ b/docs/framework/unmanaged-api/metadata/imetadataimport-findtyperef-method.md @@ -0,0 +1,64 @@ +--- +title: "IMetaDataImport::FindTypeRef メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: IMetaDataImport.FindTypeRef +api_location: mscoree.dll +api_type: COM +f1_keywords: IMetaDataImport::FindTypeRef +helpviewer_keywords: +- IMetaDataImport::FindTypeRef method [.NET Framework metadata] +- FindTypeRef method [.NET Framework metadata] +ms.assetid: 1b2bbf3f-943e-412e-b66c-e802431b055c +topic_type: apiref +caps.latest.revision: "11" +author: mairaw +ms.author: mairaw +manager: wpickett +ms.openlocfilehash: d742033788e270f01ee0cea70569ca65e7f35697 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# IMetaDataImport::FindTypeRef メソッド +トークンは TypeRef にポインターを取得、指定されたスコープ内にあるし、指定した名前を持つ参照します。 + +## 構文 + +``` +HRESULT FindTypeRef ( + [in] mdToken tkResolutionScope, + [in] LPCWSTR szName, + [out] mdTypeRef *ptr +); +``` + +#### パラメーター + `tkResolutionScope` + [in]モジュール、アセンブリ、または型を指定する ModuleRef、AssemblyRef、または TypeRef トークンそれぞれ、型参照に定義されます。 + + `szName` + [in]検索する参照型の名前です。 + + `ptr` + [out]一致する TypeRef トークンへのポインター。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** Cor.h + + **ライブラリ:** MsCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v10plus](../../../../includes/net-current-v10plus-md.md)] + +## 関連項目 + [IMetaDataImport インターフェイス](../../../../docs/framework/unmanaged-api/metadata/imetadataimport-interface.md) + [IMetaDataImport2 インターフェイス](../../../../docs/framework/unmanaged-api/metadata/imetadataimport2-interface.md) diff --git a/docs/framework/unmanaged-api/metadata/imetadataimport-gettypedefprops-method.md b/docs/framework/unmanaged-api/metadata/imetadataimport-gettypedefprops-method.md new file mode 100644 index 00000000000..4d07be31b9a --- /dev/null +++ b/docs/framework/unmanaged-api/metadata/imetadataimport-gettypedefprops-method.md @@ -0,0 +1,76 @@ +--- +title: "IMetaDataImport::GetTypeDefProps メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: IMetaDataImport.GetTypeDefProps +api_location: mscoree.dll +api_type: COM +f1_keywords: IMetaDataImport::GetTypeDefProps +helpviewer_keywords: +- GetTypeDefProps method [.NET Framework metadata] +- IMetaDataImport::GetTypeDefProps method [.NET Framework metadata] +ms.assetid: 00061a25-ba05-47a7-b984-fd916b06b149 +topic_type: apiref +caps.latest.revision: "12" +author: mairaw +ms.author: mairaw +manager: wpickett +ms.openlocfilehash: 1025ffde2bd066c81c4c562c0dd86e829fc2aef3 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# IMetaDataImport::GetTypeDefProps メソッド +メタデータ情報を返します、指定した TypeDef トークンによって表されます。 + +## 構文 + +``` +HRESULT GetTypeDefProps ( + [in] mdTypeDef td, + [out] LPWSTR szTypeDef, + [in] ULONG cchTypeDef, + [out] ULONG *pchTypeDef, + [out] DWORD *pdwTypeDefFlags, + [out] mdToken *ptkExtends +); +``` + +#### パラメーター + `td` + [in]メタデータを返す型を表す TypeDef トークンです。 + + `szTypeDef` + [out]型名を格納しているバッファー。 + + `cchTypeDef` + [in]ワイド文字単位のサイズ`szTypeDef`です。 + + `pchTypeDef` + [out]ワイド文字数で返される`szTypeDef`です。 + + `pdwTypeDefFlags` + [out]型定義を変更するフラグのいずれかへのポインター。 この値からビットマスクである、 [CorTypeAttr](../../../../docs/framework/unmanaged-api/metadata/cortypeattr-enumeration.md)列挙します。 + + `ptkExtends` + [out]要求された型の基本型を表す TypeDef または TypeRef メタデータ トークン。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** Cor.h + + **ライブラリ:** MsCorEE.dll にリソースとして含まれています。 + + **.NET framework のバージョン:**[!INCLUDE[net_current_v10plus](../../../../includes/net-current-v10plus-md.md)] + +## 関連項目 + [IMetaDataImport インターフェイス](../../../../docs/framework/unmanaged-api/metadata/imetadataimport-interface.md) + [IMetaDataImport2 インターフェイス](../../../../docs/framework/unmanaged-api/metadata/imetadataimport2-interface.md) diff --git a/docs/framework/unmanaged-api/profiling/clr-profilers-and-windows-store-apps.md b/docs/framework/unmanaged-api/profiling/clr-profilers-and-windows-store-apps.md new file mode 100644 index 00000000000..0dca32abcba --- /dev/null +++ b/docs/framework/unmanaged-api/profiling/clr-profilers-and-windows-store-apps.md @@ -0,0 +1,437 @@ +--- +title: "CLR プロファイラーと Windows ストア アプリ" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +dev_langs: csharp +applies_to: +- Windows 10 +- Windows 8 +helpviewer_keywords: +- profiling API +- profiling API [.NET Framework] +- profiling managed code +- profiling managed code [Windows Store Apps] +ms.assetid: 1c8eb2e7-f20a-42f9-a795-71503486a0f5 +caps.latest.revision: "8" +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: db1152e82edde34dc8dbaba09f20b9f769dffbca +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# CLR プロファイラーと Windows ストア アプリ +このトピックでは、分析する診断ツールの書き込みが Windows ストア アプリ内で実行されているコードを管理する場合について検討する必要がありますについて説明します。 また、Windows ストア アプリに対して実行する、操作を続行するために、既存の開発ツールを変更するガイドラインを示します。 この情報を理解するのには、ツールを変更するスクリプトは Windows デスクトップ アプリケーション、およびするに対して正しく実行、対象となるようになりましたこと診断ツールで、この API を既に使用している場合は、共通言語ランタイム プロファイリング API に慣れている、最適ですWindows ストア アプリに対して正しく実行します。 + + このトピックは、次のセクションで構成されています。 + + [はじめに](#Intro) + [アーキテクチャと用語](#Arch) + [Windows RT デバイス](#RT) +[Windows ランタイム Api の使用](#Consuming) +[プロファイラー DLL の読み込み](#Loading) + [起動時の一般的な考慮事項と読み込みのアタッチ](#Common) + [スタートアップ負荷](#Startup) + [負荷をアタッチします。](#Attach) +[Windows ストア アプリ内で実行されています。](#Running) + [Windows ストア アプリの Api を](#APIs) + [アクセス許可が制限](#Permissions) + [プロセス間通信](#Interprocess) + [シャット ダウンの通知はありません。](#Shutdown) +[Windows ランタイム メタデータ ファイル](#Metadata) + [マネージ コードと非マネージ Winmd](#WMDs) + [WinMD ファイルが CLR モジュールのようになります](#CLRModules) + [Winmd からメタデータの読み取り](#Reading) + [Winmd からメタデータを変更します。](#Modifying) + [Winmd でアセンブリ参照を解決します。](#Resolving) +[メモリ プロファイラー](#Profilers) + [ForceGC マネージ スレッドを作成します。](#ForceGC) + [ConditionalWeakTableReferences](#WeakTable) +[まとめ](#Conclusion) +[リソース](#Resources) + + +## はじめに + 場合は、過去の導入段落、CLR プロファイル API を使い慣れています。 管理対象のデスクトップ アプリケーションに対して適切に動作する診断ツールを既に書き込まれています。 これで、興味の対処、ツールは、管理対象の Windows ストア アプリで動作できるようにします。 おそらく既にしようとしたこの作業を行い、簡単な作業ではないことが検出されます。 実際には、すべてのツール開発者に知られていない可能性がありますの考慮事項の数があります。 例: + +- Windows ストア アプリは、重大な権限のコンテキストで実行します。 + +- Windows メタデータ ファイルには、従来のマネージ モジュールと比較して一意の特性があります。 + +- Windows ストア アプリでは、対話機能がダウンしたときにそれ自体の中断の習慣があります。 + +- プロセス間通信メカニズムは、さまざまな理由で動作しない可能性があります。 + + このトピックでは、注意すべき事項およびそれらに適切に対処する方法を示します。 + + CLR プロファイル API を初めて場合は、このトピックの最後にリソースをより深く概要情報を検索するまでスキップします。 + + 特定の Windows Api と使用方法に関する詳細な情報を提供することは、このトピックの内容のスコープ外もです。 このトピックの開始点を検討し、ここで参照されるすべての Windows Api の詳細については、MSDN を参照してください。 + + +## アーキテクチャと用語 + 通常、診断ツールは、次の図のようなアーキテクチャを持ちます。 「プロファイラー、」という用語を使用してが、このような多くのツールには、標準的なパフォーマンスまたはメモリのプロファイリングにコード カバレッジなどの領域に、以外の操作もモック オブジェクト フレームワーク、タイム トラベルの監視、およびなどのアプリケーションのデバッグが参照してください。 わかりやすくするため、このトピックは引き続きプロファイラーとしてこれらすべてのツールを参照してください。 + + 次の用語は、このトピック全体で使用されます。 + + アプリケーション + これは、プロファイラーが分析されているアプリケーションです。 通常、このアプリケーションの開発者は、アプリケーションの問題の診断に役立つプロファイラーを使用するがようになりました。 従来、このアプリケーションが、Windows デスクトップ アプリケーションであっても、このトピックの「Windows ストア アプリに求めています。 + + プロファイラー DLL + これは、分析対象のアプリケーションのプロセス空間に読み込まれるコンポーネントです。 プロファイラーの「エージェント」とも呼ばれる、このコンポーネントを実装して、 [ICorProfilerCallback](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback-interface.md)[ICorProfilerCallback インターフェイス](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback-interface.md)(2、3 など) インターフェイスおよび消費、 [ICorProfilerInfo](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo-interface.md)(2、3 など)、分析対象のアプリケーションについて、可能性のあるデータを収集するインターフェイスは、アプリケーションの動作の側面を変更します。 + + プロファイラー UI + これは、プロファイラーのユーザーが対話するデスクトップ アプリケーションです。 ユーザーにアプリケーションの状態を表示して、分析対象のアプリケーションの動作を制御するための手段をユーザーに提供を行います。 このコンポーネントは、プロファイリング対象アプリケーションのプロセス空間とは別に独自のプロセス空間で常に実行されます。 プロファイラーの UI は、「アタッチ トリガー、」これを呼び出すプロセスとしても機能できます、 [iclrprofiling::attachprofiler](../../../../docs/framework/unmanaged-api/profiling/iclrprofiling-attachprofiler-method.md)分析アプリケーションがこのような場合は、プロファイラー DLL しなかったでプロファイラー DLL を読み込むのメソッド起動時にロードします。 + +> [!IMPORTANT] +> プロファイラー UI おく必要がある Windows デスクトップ アプリケーションでは、コントロールと Windows ストア アプリでレポートを使用した場合にもします。 パッケージを Windows ストアに、診断ツールを出荷するのには期待しないでください。 ツールは、Windows ストア アプリが実行できないし、プロファイラーの UI の内部にそれらの問題の多くの作業を行う必要があります。 + + サンプル コードには、このドキュメント全体を前提とします。 + +- CLR プロファイル API の要件に従って、ネイティブ DLL をする必要がありますので、C++ では、プロファイラー DLL が書き込まれます。 + +- プロファイラーの UI には、c# で書き込まれます。 必要に応じて、これはありませんが、プロファイラー UI のプロセスの言語の要件がないため、わかりやすく、シンプルでは言語を選択しないのはなぜですか。 + + +### Windows RT デバイス + Windows RT デバイスがロックされている非常にします。 サード パーティ製プロファイラー単にすることはできませんなどのデバイス上にロードします。 このドキュメントは、Windows 8 Pc について説明します。 + + +## Windows ランタイム Api の使用 + 次のセクションで説明したシナリオの多くは、プロファイラー UI デスクトップ アプリケーションをいくつかの新しい Windows ランタイム Api を使用する必要があります。 デスクトップ アプリケーションから使用できるどの Windows ランタイム Api を理解するのには、ドキュメントを参照してくださいにしておくし、かどうかの動作が異なる場合にアプリと呼ばれるデスクトップ アプリケーションと Windows ストアからです。 + + 場合は、プロファイラーの UI は、マネージ コードで記述された、簡単なそれらの Windows ランタイム Api を使用するために実行する必要があります、いくつかの手順があります。 参照してください、[マネージ デスクトップ アプリと Windows ランタイム](http://go.microsoft.com/fwlink/?LinkID=271858)詳細については資料です。 + + +## プロファイラー DLL の読み込み + このセクションでは、プロファイラー UI が、プロファイラー DLL を読み込む Windows ストア アプリがどのように発生する方法について説明します。 このセクションで説明したコードは、プロファイラー UI、デスクトップ アプリで属しており、したがっては安全にデスクトップ アプリは Windows ストア アプリの必ずしも安全でない Windows Api を使用してが含まれます。 + + プロファイラー UI には、プロファイラー DLL の 2 つの方法で、アプリケーションのプロセス空間に読み込まれる可能性があります。 + +- アプリケーションの起動時、環境変数によって制御されるためです。 + +- 呼び出すことによって起動が完了した後、アプリケーションにアタッチすることにより、 [iclrprofiling::attachprofiler](../../../../docs/framework/unmanaged-api/profiling/iclrprofiling-attachprofiler-method.md)メソッドです。 + + スタートアップ ロード テストと Windows ストア アプリで正しく動作する、プロファイラー DLL のアタッチ読み込み、最初の障害のいずれかが取得されます。 読み込みの両方の形式は、特別な考慮事項を共通の共有で始めます。 + + +### 起動時の一般的な考慮事項と読み込みのアタッチ + **プロファイラー DLL の署名** + Windows では、プロファイラー DLL をロードしようとして、プロファイラー DLL が正しく署名されていることを確認します。 ない場合は、既定では、読み込みに失敗します。 これには、2 つの方法があります。 + +- プロファイラー DLL が署名されていることを確認します。 + +- インストールが必要、開発者用ライセンスの Windows 8 コンピューターで、ツールを使用する前に、ユーザーに通知します。 これは、ために自動的に Visual Studio から、またはコマンド プロンプトから手動でします。 詳細については、次を参照してください。[開発者用ライセンスを取得](https://msdn.microsoft.com/library/windows/apps/Hh974578.aspx)です。 + + **ファイル システム権限** + Windows ストア アプリの読み込みおよび格納されているファイル システム上の場所から、プロファイラー DLL を実行するアクセス許可が必要です。 既定では、Windows ストア アプリでは、ほとんどのディレクトリでこのようなアクセス許可がないし、プロファイラー DLL の読み込みに失敗したしようとすると、Windows アプリケーション イベント ログにこのようなエントリが生成されます。 + +```Output +NET Runtime version 4.0.30319.17929 - Loading profiler failed during CoCreateInstance. Profiler CLSID: '{xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}'. HRESULT: 0x80070005. Process ID (decimal): 4688. Message ID: [0x2504]. +``` + + 一般に、Windows ストア アプリは限られた、ディスク上の場所にアクセス許可のみです。 各 Windows ストア アプリは、すべての Windows ストア アプリがアクセスを許可、ファイル システム内の他のいくつかの領域と同様に、独自のアプリケーション データ フォルダーにアクセスできます。 すべての Windows ストア アプリが読み取られますが、既定では実行アクセス許可があるため、プロファイラー DLL とその依存関係の Program Files または Program Files (x86)、下にある任意の場所をインストールすることをお勧めします。 + + +### スタートアップ負荷 + 通常、デスクトップ アプリでプロファイラー UI にメッセージが表示されます、プロファイラー DLL の起動ロード必要な CLR プロファイル API 環境変数が含まれる環境ブロックを初期化することによって (つまり、 `COR_PROFILER`、 `COR_ENABLE_PROFILING`、および`COR_PROFILER_PATH`)、およびその環境ブロックで、新しいプロセスを作成します。 Windows ストア アプリの場合は true を保持して、同じがメカニズムが異なります。 + + **管理者特権で実行しません。** + プロセスを Windows ストア アプリ プロセス B、A のプロセスを起動するときに実行するかどう中程度の整合性にレベル、高い整合性レベル (つまり、昇格したされません) ではなくです。 つまり、いずれかがプロファイラー UI は中程度の整合性レベルで実行されている必要がありますまたは、Windows ストア アプリの起動処理するメディアの整合性レベルで別のデスクトップ プロセスを起動する必要があります。 + + **プロファイルへの Windows ストア アプリを選択します。** + まず、質問、プロファイラーを起動するには、どの Windows ストア アプリにします。 デスクトップ アプリは、ファイル参照のダイアログ ボックスを表示する場合と、ユーザーが検索して .exe ファイルを選択します。 Windows ストア アプリが異なる場合、し、[参照] ダイアログを使用すると、意味がないためです。 代わりに、ユーザーからを選択するには、そのユーザー用にインストールされた Windows ストア アプリの一覧を表示することをお勧めします。 + + 使用することができます、 [PackageManager クラス](https://msdn.microsoft.com/library/windows/apps/windows.management.deployment.packagemanager.aspx)をこの一覧を生成します。 `PackageManager`デスクトップ アプリで使用可能な Windows ランタイム クラスは、実際には*のみ*デスクトップ アプリで利用できます。 + + C# yses でデスクトップ アプリとして書き込まれる仮定プロファイラー UI から次のコード例、 `PackageManager` Windows アプリの一覧を生成します。 + +```csharp +string currentUserSID = WindowsIdentity.GetCurrent().User.ToString(); +IAppxFactory appxFactory = (IAppxFactory) new AppxFactory(); +PackageManager packageManager = new PackageManager(); +IEnumerable packages = packageManager.FindPackagesForUser(currentUserSID); +``` + + **カスタムの環境ブロックを指定します。** + 新しい COM インターフェイス、 [IPackageDebugSettings](https://msdn.microsoft.com/library/hh438393\(v=vs.85\).aspx)診断の形式によっては簡単にするための Windows ストア アプリの実行動作をカスタマイズすることができます。 そのメソッドのいずれかの[EnableDebugging](https://msdn.microsoft.com/library/hh438395\(v=vs.85\).aspx)、開始すると、環境ブロックを Windows ストア アプリに渡すことができますと共に自動処理の中断を無効にするように他の便利な効果。 環境変数を指定する必要があるために、環境ブロックは重要な (`COR_PROFILER`、 `COR_ENABLE_PROFILING`、および`COR_PROFILER_PATH)`)、プロファイラー DLL を読み込むために、CLR で使用します。 + + 次のコード スニペットを考慮してください。 + +```csharp +IPackageDebugSettings pkgDebugSettings = new PackageDebugSettings(); +pkgDebugSettings.EnableDebugging(packgeFullName, debuggerCommandLine, + (IntPtr)fixedEnvironmentPzz); +``` + + いくつかの項目が、正しく理解する必要があります。 + +- `packageFullName`パッケージを反復処理して、取得中に決定できる`package.Id.FullName`です。 + +- `debuggerCommandLine`もっと興味深いです。 Windows ストア アプリへのカスタム環境ブロックを渡すために、独自の単純なダミー デバッガーを記述する必要があります。 Windows 産み落とす Windows ストア アプリは中断され、この例でようにコマンドラインを使用して、デバッガーを起動して、デバッガーをアタッチします。 + + ```Output + MyDummyDebugger.exe -p 1336 -tid 1424 + ``` + + ここで`-p 1336`Windows ストア アプリのプロセス ID 1336、ことを意味し、`-tid 1424`スレッド ID 1424 が中断されているスレッドであることを意味します。 ダミーのデバッガーのコマンドラインから ThreadID を解析は、そのスレッドを再開およびを終了します。 + + そのために C++ コードのいくつかの例を次に示します (エラー チェックを追加することを確認する!)。 + + ```cpp + int wmain(int argc, wchar_t* argv[]) + { + // … + // Parse command line here + // … + + HANDLE hThread = OpenThread(THREAD_SUSPEND_RESUME, + FALSE /* bInheritHandle */, nThreadID); + ResumeThread(hThread); + CloseHandle(hThread); + return 0; + } + ``` + + 診断ツールのインストールの一部としてこのダミー デバッガーを展開し、このデバッガーでへのパスを指定する必要があります、`debuggerCommandLine`パラメーター。 + + **Windows ストア アプリを起動します。** + Windows ストア アプリを起動する時点が最後に到着しました。 既に既にこれを自分でこれをしようとした場合、お気付きを[CreateProcess](https://msdn.microsoft.com/library/windows/desktop/ms682425\(v=vs.85\).aspx)は Windows ストア アプリのプロセスを作成する方法にありません。 代わりに、使用する必要があります、 [IApplicationActivationManager::ActivateApplication](https://msdn.microsoft.com/library/windows/desktop/Hh706903\(v=vs.85\).aspx)メソッドです。 実行するには、初めて起動する Windows ストア アプリのアプリのユーザー モデル ID を取得する必要があります。 つまり、少し物置マニフェストからを実行する必要があります。 + + パッケージを繰り返し処理しているときに (「を選択する、Windows ストア アプリをプロファイル」を参照してください、[スタートアップ ロード](#Startup)前セクション)、現在のパッケージのマニフェストに含まれているアプリケーションのセットを取得します。 + +```csharp +string manifestPath = package.InstalledLocation.Path + "\\AppxManifest.xml"; + +AppxPackaging.IStream manifestStream; +SHCreateStreamOnFileEx( + manifestPath, + 0x00000040, // STGM_READ | STGM_SHARE_DENY_NONE + 0, // file creation attributes + false, // fCreate + null, // reserved + out manifestStream); + +IAppxManifestReader manifestReader = appxFactory.CreateManifestReader(manifestStream); + +IAppxManifestApplicationsEnumerator appsEnum = manifestReader.GetApplications(); +``` + + はい、1 つのパッケージは、複数のアプリケーションを持つことができ、各アプリケーションには、独自のアプリケーション ユーザー モデル ID したがって、ユーザーに、プロファイルするアプリケーションを確認し、その特定のアプリケーションからのアプリケーション ユーザー モデル ID を取得します。 + +```csharp +while (appsEnum.GetHasCurrent() != 0) +{ + IAppxManifestApplication app = appsEnum.GetCurrent(); + string appUserModelId = app.GetAppUserModelId(); +… +``` + + 最後に、今すぐ必要がある Windows ストア アプリを起動する必要があります。 + +```csharp +IApplicationActivationManager appActivationMgr = new ApplicationActivationManager(); +appActivationMgr.ActivateApplication(appUserModelId, appArgs, ACTIVATEOPTIONS.AO_NONE, out pid); +``` + + **DisableDebugging を呼び出す** + 呼び出されたとき[IPackageDebugSettings::EnableDebugging](https://msdn.microsoft.com/library/hh438395\(v=VS.85\).aspx)、呼び出すことによって自分の後にクリーンアップすると、promise を作成した、 [IPackageDebugSettings::DisableDebugging](https://msdn.microsoft.com/library/hh438394\(v=vs.85\).aspx)メソッド、ので、必ずを行うにはプロファイリング セッションが上にします。 + + +### 負荷をアタッチします。 + 使用して、プロファイラーの UI は、プロファイラー DLL を実行して既に開始されているアプリケーションにアタッチする場合、 [iclrprofiling::attachprofiler](../../../../docs/framework/unmanaged-api/profiling/iclrprofiling-attachprofiler-method.md)です。 同じ Windows ストア アプリを使用した場合は true を保持します。 上記の一般的な考慮事項、に加えてことを確認しますが、対象の Windows ストア アプリは中断されません。 + + **EnableDebugging** + 同様にスタートアップ ロードを呼び出す、 [IPackageDebugSettings::EnableDebugging](https://msdn.microsoft.com/library/hh438395\(v=VS.85\).aspx)メソッドです。 環境ブロックを渡す不要でその他の機能の 1 つ必要があります: 自動処理の中断を無効にします。 それ以外の場合、プロファイラー UI を呼び出すと[AttachProfiler](../../../../docs/framework/unmanaged-api/profiling/iclrprofiling-attachprofiler-method.md)対象の Windows ストア アプリを中断する可能性があります。 実際には、この可能性は、ユーザーが、プロファイラー UI と対話するようになりましたし、Windows ストア アプリがユーザーの画面のいずれかでアクティブでない場合。 かどうか、Windows ストア アプリが中断されていることはできませんへ応答とは、CLR がプロファイラー DLL をアタッチするそこに送信を通知します。 + + これを行う次のようにします。 + +```csharp +IPackageDebugSettings pkgDebugSettings = new PackageDebugSettings(); +pkgDebugSettings.EnableDebugging(packgeFullName, null /* debuggerCommandLine */, + IntPtr.Zero /* environment */); +``` + + これを実行するようにスタートアップ負荷の場合、デバッガー コマンドラインまたは環境ブロックを指定しない点を除いて、同じ呼び出しです。 + + **DisableDebugging** + いつものように、忘れずに呼び出す[IPackageDebugSettings::DisableDebugging](https://msdn.microsoft.com/library/hh438394\(v=vs.85\).aspx)プロファイル セッションが完了するとします。 + + +## Windows ストア アプリ内で実行されています。 + したがって、Windows ストア アプリには、プロファイラー DLL は最後に読み込まれました。 プロファイラー DLL には、Windows ストア アプリで必要な別のルールで再生する方法を学習する必要があります、これで Api は、許容される方法などを実行するアクセス許可に制限します。 + + +### Windows ストア アプリの Api を + Windows API を参照する場合に、すべての API がデスクトップ アプリ、Windows ストア アプリ、またはその両方に適用されているとして記載されていることがわかります。 たとえば、**要件**のドキュメントのセクションで、 [InitializeCriticalSectionAndSpinCount](https://msdn.microsoft.com/library/windows/desktop/ms683476\(v=vs.85\).aspx)関数は、関数は、デスクトップ アプリのみに適用されることを示します。 これに対し、 [InitializeCriticalSectionEx](https://msdn.microsoft.com/library/windows/desktop/ms683477\(v=vs.85\).aspx)機能は、デスクトップ アプリと Windows ストア アプリの両方を使用します。 + + プロファイラー DLL を開発するときに扱うことを示す、Windows ストア アプリにある場合と Windows ストア アプリに使用可能と記載されている Api を使用してのみです。 依存関係を分析 (たとえば、実行することができます`link /dump /imports`を監査する、プロファイラー DLL に対して)、依存関係のうち、[ok] はおらず、これを表示するドキュメントを検索します。 Safe として記載されている API の新しい形式で交換するだけで、ほとんどの場合、違反を修正することができます (たとえば、置換[InitializeCriticalSectionAndSpinCount](https://msdn.microsoft.com/library/windows/desktop/ms683476\(v=vs.85\).aspx)で[InitializeCriticalSectionEx](https://msdn.microsoft.com/library/windows/desktop/ms683477\(v=vs.85\).aspx))。 + + プロファイラー DLL は、デスクトップ アプリのみに適用されるいくつかの Api を呼び出すし、まだように見えるであっても、プロファイラー DLL が読み込まれるときに Windows ストア アプリ内での作業ことに注意してください可能性があります。 Windows ストア アプリのプロセスに読み込まれるときに、プロファイラー DLL での Windows ストア アプリで使用するために記載されていないすべての API を使用して危険なことに注意してください。 + +- このような Api は、Windows ストア アプリで実行された一意のコンテキストで呼び出されたときに動作する保証はありません。 + +- 別の Windows ストア アプリのプロセス内で呼び出された場合、このような Api が一貫して機能しません可能性があります。 + +- このような Api は、現在のバージョンの Windows、Windows ストア アプリから正常に動作するように思えるかもしれませんが分割または将来のリリースの Windows で無効にします。 + + すべての違反の修正し、リスクを回避することをお勧めします。 + + 絶対に特定の API なしで使用できないを Windows ストア アプリ用に適切な代替を見つけることができませんがあります。 このような場合は、最低限。 + +- テスト、テスト、その API の使用からリビング daylights をテストします。 + +- API の突然が中断または呼び出された場合に表示されなくなりますを理解してから Windows ストア内のアプリ今後のリリースにおける Windows です。 これは、されませんによってと見なされる互換性問題にならなければ、Microsoft との使用をサポートするしても、優先度はされません。 + + +### アクセス許可が制限 + これは、デスクトップ アプリと Windows ストア アプリのアクセス許可は異なる方法をすべて一覧に、このトピックの範囲外です。 確実に動作は異なる、プロファイラー DLL (Windows ストア アプリ、デスクトップ アプリと比較してに読み込まれる) と任意リソースにアクセスしようとするたびにです。 ファイル システムでは、最も一般的な例を示します。 ありますが、いくつかが特定の Windows ストア アプリのアクセスが許可されているディスク上に配置 (を参照してください[ファイル アクセスと権限 (Windows ランタイム アプリ](https://msdn.microsoft.com/library/windows/apps/hh967755.aspx))、および、プロファイラー DLL が下にある同じ制限が適用されます。 コードを徹底的にテストします。 + + +### プロセス間通信 + 図のように、このホワイト ペーパーの先頭に、プロファイラー DLL (Windows ストア アプリのプロセス空間に読み込まれる) が、プロファイラー UI に (別のデスクトップ アプリのプロセス領域で実行されている)、独自のカスタム プロセスの間で通信するために必要があります。通信 (IPC) チャネル。 プロファイラーの UI は、その動作を変更するプロファイラー DLL に信号を送信し、プロファイラー DLL は、分析対象の Windows ストア アプリからデータを処理後のおよびプロファイラーのユーザーに表示するため、プロファイラーの UI に送り返します。 + + ほとんどのプロファイラーがこのように動作する必要がありますが Windows ストア アプリに、プロファイラー DLL が読み込まれるときの IPC メカニズムの選択項目がより限定されました。 たとえば、名前付きパイプに含まれない SDK、Windows ストア アプリのため、使用することはできません。 + + もちろん、ファイルである限りより限定的にです。 イベントも使用できます。 + + **ファイル経由の通信** + ほとんどのデータは、ファイルを使用して、プロファイラー DLL プロファイラー UI と可能性があります渡されます。 キーを選択し、プロファイラーの DLL (Windows ストア アプリのコンテキスト) とプロファイラー UI の両方が読み取りがファイルの場所への書き込みアクセス。 たとえば、一時フォルダーのパスは、プロファイラー DLL とプロファイラー UI の両方からアクセスできる場所が、(他の Windows ストア アプリのパッケージからログ情報を隔離) その他の Windows ストア アプリのパッケージにアクセスできません。 + + プロファイラーの UI とプロファイラー DLL の両方を判断できましていないこのパス個別にします。 現在のユーザーに対してインストールされているすべてのパッケージを反復処理時に、プロファイラー UI (前のサンプル コードを参照) へのアクセスの取得、`PackageId`クラス、コンピューターをこのスニペットのようなコードの派生元となる一時フォルダーのパス。 (いつものように、エラー チェックを省略すると簡略化のためです。) + +```csharp +// C# code for the Profiler UI. +ApplicationData appData = + ApplicationDataManager.CreateForPackageFamily( + packageId.FamilyName); + +tempDir = appData.TemporaryFolder.Path; +``` + + その一方で、プロファイラー DLL が基本的に同じ操作で行うことができますより簡単に取得できるか、 [ApplicationData](https://msdn.microsoft.com/library/windows/apps/windows.storage.applicationdata.aspx)クラスを使用して、 [ApplicationData.Current](https://msdn.microsoft.com/library/windows/apps/windows.storage.applicationdata.current.aspx)プロパティです。 + + **イベントを介して通信** + プロファイラー UI とプロファイラー DLL の間での単純なシグナリング セマンティクスを実行する場合に、Windows ストア アプリだけでなくデスクトップ アプリ内のイベントを使用することができます。 + + プロファイラー DLL だけを呼び出し、 [CreateEventEx](https://msdn.microsoft.com/library/windows/desktop/ms682400\(v=vs.85\).aspx)任意の名前と名前付きイベントを作成する関数。 例: + +```cpp +// Profiler DLL in Windows Store app (C++). +CreateEventEx( + NULL, // Not inherited + "MyNamedEvent" + CREATE_EVENT_MANUAL_RESET, /* explicit ResetEvent() required; leave initial state unsignaled */ + EVENT_ALL_ACCESS); +``` + + プロファイラー UI には、Windows ストア アプリの名前空間の下にある名前付きイベントを検索する必要があります。 たとえば、プロファイラー UI を呼び出すことが[CreateEventEx](https://msdn.microsoft.com/library/windows/desktop/ms682400\(v=vs.85\).aspx)、としてイベント名を指定します。 + + `AppContainerNamedObjects\\MyNamedEvent` + + ``Windows ストア アプリの AppContainer SID です。 このトピックの前のセクションでは、現在のユーザーに対してインストールされているパッケージを繰り返し処理する方法を示しました。 そのサンプル コードから、パッケージ Id を取得できます。 Id を取得したりできます、``には、次のようなコード。 + +```csharp +IntPtr acPSID; +DeriveAppContainerSidFromAppContainerName(packageId.FamilyName, out acPSID); + +string acSid; +ConvertSidToStringSid(acPSID, out acSid); + +string acDir; +GetAppContainerFolderPath(acSid, out acDir); +``` + + +### シャット ダウンの通知はありません。 + いずれかに依存しないように、プロファイラー DLL、Windows ストア アプリ内の実行中、 [icorprofilercallback::shutdown](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback-shutdown-method.md)またはでも[DllMain](https://msdn.microsoft.com/library/windows/desktop/ms682583\(v=vs.85\).aspx) (で`DLL_PROCESS_DETACH`) 呼び出しをプロファイラー DLL を通知するにはWindows ストア アプリが終了しています。 実際には、それらが呼び出されないことが予想されます。 従来は、多くのプロファイラー Dll を使ってこれらの通知の便利な場所としてのディスク、ファイルを閉じると、プロファイラー UI などに通知を送信するキャッシュをフラッシュします。プロファイラー DLL は少し異なる方法で編成する必要があります。 + + プロファイラー DLL はログ情報をする必要があります。 パフォーマンス上の理由から、可能性があるメモリ内の情報をバッチのバッチが過去のいくつかのしきい値サイズの増大に応じて拡張をディスクにフラッシュします。 まだディスクにフラッシュされていないすべての情報が失われることを前提としています。 これに、しきい値は、慎重に選択して、プロファイラーの UI がプロファイラー DLL によって書き込まれた不完全な情報を処理するセキュリティで保護する必要があることを意味します。 + + +## Windows ランタイム メタデータ ファイル + 詳しくは、このドキュメントのスコープ外はファイルは、どのような Windows ランタイム メタデータ (WinMD) です。 このセクションでは、WinMD ファイルが、プロファイラー DLL を分析する Windows ストア アプリによって読み込まれるときに CLR プロファイル API の動作に制限されます。 + + +### マネージ コードと非マネージ Winmd + 開発者は、新しい Windows ランタイム コンポーネント プロジェクトを作成する Visual Studio を使用している場合、そのプロジェクトのビルドは、開発者が作成したメタデータ (クラス、インターフェイスなどの種類の説明) を記述する WinMD ファイルを生成します。 このプロジェクトが c# または VB で記述されたマネージ言語プロジェクトの場合は、それらの型 (開発者のソース コードからコンパイルされているすべての IL が含まれていることを意味) の実装は同じ WinMD ファイルも含まれます。 このようなファイルは、マネージ WinMD ファイルと呼ばれます。 務める興味深い点で、Windows ランタイム メタデータと基になる実装の両方が含まれています。 + + これに対し、開発者は、C++ の Windows ランタイム コンポーネント プロジェクトを作成する場合にそのプロジェクトのビルドには、メタデータのみを含む WinMD ファイルが生成されます。 と実装は、別のネイティブ DLL にコンパイルされます。 同様に、Windows SDK に含まれている WinMD ファイルには、Windows の一部として出荷されている個別のネイティブ Dll にコンパイルの実装とメタデータのみが含まれます。 + + 以下の情報は、両方マネージ Winmd、メタデータと実装を含んでいると非マネージ Winmd メタデータのみを含めるに適用されます。 + + +### WinMD ファイルが CLR モジュールのようになります + CLR に関する限り、すべての WinMD ファイルはモジュールです。 そのため、CLR プロファイル API は、WinMD ファイルを読み込むときに、プロファイラー DLL とその ModuleIDs とは何か他のマネージ モジュールと同じ方法でように指示します。 + + プロファイラー DLL は呼び出すことによって他のモジュールから WinMD ファイルを区別することができます、 [icorprofilerinfo 3::getmoduleinfo2](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo3-getmoduleinfo2-method.md)メソッドを調べて、`pdwModuleFlags`の出力パラメーター、 [COR_PRF_MODULE_WINDOWS_ランタイム](../../../../docs/framework/unmanaged-api/profiling/cor-prf-module-flags-enumeration.md)フラグ。 (これは設定 ModuleID WinMD を表す場合にのみ)。 + + +### Winmd からメタデータの読み取り + 正規のモジュール同様、WinMD ファイルには使用して読み取ることができるメタデータが含まれて、[メタデータ Api](../../../../docs/framework/unmanaged-api/metadata/index.md)です。 ただし、CLR は、WinMD ファイルをプログラムにマネージ コードと WinMD ファイルを使用する開発者がより自然なプログラミングの経験を持つことができますを読み取る際に、.NET Framework の型を Windows ランタイム型をマップします。 これらのマッピングの例については、次を参照してください。 [.NET Framework サポートの Windows ストア アプリおよび Windows ランタイム](../../../../docs/standard/cross-platform/support-for-windows-store-apps-and-windows-runtime.md)です。 + + ビュー、プロファイラーが表示されます、メタデータ Api を使用する場合: 生の Windows ランタイム ビュー、またはマップされた .NET Framework ビューしますか? 回答: が設定します。 + + 呼び出すと、 [icorprofilerinfo::getmodulemetadata](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo-getmodulemetadata-method.md)メソッドなど、メタデータ インターフェイスを取得する WinMD を[IMetaDataImport](../../../../docs/framework/unmanaged-api/metadata/imetadataimport-interface.md)、設定することもできます[ofNoTransform](../../../../docs/framework/unmanaged-api/metadata/coropenflags-enumeration.md)で、`dwOpenFlags`パラメーターをこのマッピングをオフにします。 それ以外の場合、既定では、マッピングを有効にするされます。 通常、プロファイラーでは、プロファイラー DLL は、WinMD メタデータ (たとえば、型の名前) から取得する文字列がについてよく理解し、プロファイラーのユーザーに自然に表示されるように、マッピングを有効にするが保持されます。 + + +### Winmd からメタデータを変更します。 + Winmd でメタデータを変更することはサポートされていません。 呼び出す場合は、 [icorprofilerinfo::getmodulemetadata](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo-getmodulemetadata-method.md) WinMD のメソッド ファイルし、指定[ofWrite](../../../../docs/framework/unmanaged-api/metadata/coropenflags-enumeration.md)で、`dwOpenFlags`パラメーターなど、書き込み可能なメタデータ インターフェイスを要求または[IMetaDataEmit](../../../../docs/framework/unmanaged-api/metadata/imetadataemit-interface.md)、 [GetModuleMetaData](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo-getmodulemetadata-method.md)は失敗します。 これは、(たとえば、assemblyrefs がまたはの新しいメソッドを追加する場合)、インストルメンテーションをサポートするためにメタデータを変更する必要がある IL の書き換えのプロファイラーに特に重要です。 確認するように[COR_PRF_MODULE_WINDOWS_RUNTIME](../../../../docs/framework/unmanaged-api/profiling/cor-prf-module-flags-enumeration.md)最初 (前のセクションで説明しています) にし、このようなモジュールに書き込み可能なメタデータ インターフェイスを要求しないようにします。 + + +### Winmd でアセンブリ参照を解決します。 + 多くのプロファイラーは、インストルメンテーションや型検査を支援するために手動でメタデータの参照を解決する必要があります。 このようなプロファイラーは、これらの参照は標準のアセンブリ参照はまったく異なる方法で解決されるために CLR が Winmd、 をポイントするアセンブリ参照を解決する方法について注意する必要があります。 + + +## メモリ プロファイラー + マネージ ヒープとガベージ コレクターには、Windows ストア アプリおよびデスクトップ アプリで根本的に違いはありません。 ただし、プロファイラーの作成者が認識する必要がある微妙な違いがあります。 + + +### ForceGC マネージ スレッドを作成します。 + プロファイラー DLL で通常を呼び出すから別のスレッドが作成されるメモリのプロファイリングを行うときに、 [ForceGC メソッド](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo-forcegc-method.md)メソッドです。 これは、何も新しいです。 Windows ストア アプリ内でのガベージ コレクションの処理の動作は、可能性があります、スレッドをマネージ スレッドに変換することにより意外どのような場合がありますが、(たとえば、プロファイリング API スレッド Id をそのスレッドに作成されます)。 + + このような影響を理解するのには、CLR プロファイル API で定義されている同期と非同期呼び出しの間の違いを理解する必要があります。 これは、Windows ストア アプリでの非同期呼び出しの概念から大きく異なることに注意してください。 ブログの投稿を参照してください[CORPROF_E_UNSUPPORTED_CALL_SEQUENCE あります](https://blogs.msdn.microsoft.com/davbr/2008/12/23/why-we-have-corprof_e_unsupported_call_sequence/)詳細についてはします。 + + 重要な点は、プロファイラーによって作成されたスレッドで行われた呼び出しが常と見なされる同期、プロファイラー DLL のいずれかの実装の外部からそれらの呼び出しが行われる場合でも[ICorProfilerCallback](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback-interface.md)メソッドです。 少なくとも、ために使用される場合があります。 これで、CLR がプロファイラーのスレッドのマネージ スレッドにへの呼び出しが原因になって[ForceGC メソッド](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo-forcegc-method.md)スレッドは、プロファイラーのスレッドと見なされなくことです。 CLR が、そのスレッドの同期対象のより厳格な定義に適用されるよう、— つまりの呼び出しに由来する必要がありますのプロファイラー DLL のいずれかの内側[ICorProfilerCallback](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback-interface.md)と同期を修飾するメソッド。 + + その結果、実際にしますか。 ほとんど[ICorProfilerInfo](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo-interface.md)メソッドのみを同期的に呼び出せる安全されはすぐに失敗するそれ以外の場合。 プロファイラー DLL が再利用する場合は、 [ForceGC メソッド](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo-forcegc-method.md)プロファイラーで作成されたスレッドで行われた通常他の呼び出しに対してスレッド (たとえば、 [RequestProfilerDetach](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo3-requestprofilerdetach-method.md)、 [RequestReJIT](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo4-requestrejit-method.md)、または[RequestRevert](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo4-requestrevert-method.md))、問題が発生する予定です。 など、非同期セーフ関数でも[DoStackSnapshot](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo2-dostacksnapshot-method.md)マネージ スレッドから呼び出された場合の特別な規則です。 (ブログの投稿を参照してください[プロファイラー スタック ウォーク: 基礎以降](https://blogs.msdn.microsoft.com/davbr/2005/10/06/profiler-stack-walking-basics-and-beyond/)詳細についてはします)。 + + したがって、ことをお勧めを呼び出して、プロファイラー DLL を作成する任意のスレッド[ForceGC メソッド](../../../../docs/framework/unmanaged-api/profiling/icorprofilerinfo-forcegc-method.md)使用する必要があります*のみ*Gc をトリガーし、しの GC コールバックに応答するためにします。 プロファイル API をスタックのサンプリングまたはデタッチなど他のタスクを実行するには呼び出さないでください。 + + +### ConditionalWeakTableReferences + 新しい GC コールバックは、.NET Framework 4.5 以降で、 [ConditionalWeakTableElementReferences](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback5-conditionalweaktableelementreferences-method.md)、プロファイラーの情報の詳細を示しています。*依存ハンドル*です。 これらのハンドルは実質的に、GC 有効期間管理を目的として、ターゲット オブジェクトに、ソース オブジェクトから参照を追加します。 依存ハンドルは、何も新しい、され、マネージ コードでプログラミングする場合を使用して、独自の依存ハンドルを作成できている、 Windows 8 および .NET Framework 4.5 する前にクラスです。 + + ただし、XAML の Windows ストア アプリの管理されていることを依存ハンドルの頻繁に使用します。 具体的には、CLR にそれらを使用マネージ オブジェクトとアンマネージの Windows ランタイム オブジェクト間の循環参照の管理に役立ちます。 これはにとって重要になるようになりましたよりこれまでメモリ プロファイラー ヒープ グラフのエッジの残りの部分と共に、視覚化できるようにこれらの依存ハンドルに通知するためにあることを意味します。 プロファイラー DLL を使用する必要があります[RootReferences2](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback2-rootreferences2-method.md)、 [ObjectReferences](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback-objectreferences-method.md)、および[ConditionalWeakTableElementReferences](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback5-conditionalweaktableelementreferences-method.md)ヒープ グラフの完全なビューを形成するには. + + +## まとめ + Windows ストア アプリ内で実行されるマネージ コードを分析する CLR プロファイル API を使用することはできます。 実際には、開発中、既存のプロファイラーを実行し、Windows ストア アプリをターゲットにできるように、いくつか特定の変更を加えることがことができます。 プロファイラー UI には、デバッグ モードでの Windows ストア アプリをアクティブ化のため新しい Api を使用する必要があります。 プロファイラー DLL が Windows ストア アプリの該当する Api のみを消費することを確認します。 プロファイラー DLL とプロファイラー UI 間の通信機構は、Windows ストア アプリ用のアクセス許可の制限を意識して Windows ストア アプリ API の制限を念頭に書き込まれます必要があります。 プロファイラー DLL は、CLR が Winmd はどのように処理する方法を認識する必要がありますとなり、ガベージ コレクターの動作はマネージ スレッドに関するさまざまな方法です。 + + +## リソース + **共通言語ランタイム** + - [CLR プロファイル API リファレンス](../../../../docs/framework/unmanaged-api/profiling/index.md) + +- [CLR メタデータ API リファレンス](../../../../docs/framework/unmanaged-api/metadata/index.md) + + **Windows ランタイムと CLR の相互作用** + [Windows ストア アプリおよび Windows ランタイムのための .NET Framework サポート](../../../../docs/standard/cross-platform/support-for-windows-store-apps-and-windows-runtime.md) + + **Windows ストア アプリ** + - [ファイルへのアクセスと権限 (Windows ランタイム アプリ](https://msdn.microsoft.com/library/windows/apps/hh967755.aspx) + +- [開発者用ライセンスを取得します。](https://msdn.microsoft.com/library/windows/apps/Hh974578.aspx) + +- [IPackageDebugSettings インターフェイス](https://msdn.microsoft.com/library/hh438393\(v=vs.85\).aspx) + +## 関連項目 + [プロファイル](../../../../docs/framework/unmanaged-api/profiling/index.md) diff --git a/docs/framework/unmanaged-api/profiling/icorprofilercallback4-rejitcompilationfinished-method.md b/docs/framework/unmanaged-api/profiling/icorprofilercallback4-rejitcompilationfinished-method.md new file mode 100644 index 00000000000..16f22a4cdd8 --- /dev/null +++ b/docs/framework/unmanaged-api/profiling/icorprofilercallback4-rejitcompilationfinished-method.md @@ -0,0 +1,70 @@ +--- +title: "ICorProfilerCallback4::ReJITCompilationFinished メソッド" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: reference +api_name: ICorProfilerCallback4.ReJITCompilationFinished +api_location: mscorwks.dll +api_type: COM +f1_keywords: ICorProfilerCallback4::ReJITCompilationFinished +helpviewer_keywords: +- ICorProfilerCallback4::ReJITCompilationFinished method [.NET Framework profiling] +- ReJITCompilationFinished method, ICorProfilerCallback4 interface [.NET Framework profiling] +ms.assetid: 3b5cff02-2005-44eb-a2bc-50214c4b0e1d +topic_type: apiref +caps.latest.revision: "8" +author: mairaw +ms.author: mairaw +manager: wpickett +ms.openlocfilehash: 768c77a91c072cadc2975d9dde704c134e719220 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# ICorProfilerCallback4::ReJITCompilationFinished メソッド +・ イン タイム (JIT) コンパイラが関数を再コンパイルを完了したことをプロファイラーに通知します。 + +## 構文 + +``` +HRESULT ReJITCompilationFinished( + [in] FunctionID functionId, [in] ReJITID rejitId, + [in] HRESULT hrStatus, + [in] BOOL fIsSafeToBlock); +``` + +#### パラメーター + `functionId` + [in]再コンパイルされた関数の ID。 + + `rejitId` + [in] JIT 再コンパイルされた関数のID。 + + `hrStatus` + [in]JIT 再コンパイルが成功したかどうかを示す値。 + + `fIsSafeToBlock` + [in]`true`ブロックことにより、ランタイムでこのコールバックから戻るには、呼び出し元のスレッドの待機を示すために`false`をブロックしていないに影響すること、ランタイムの動作を示します。 + + 値`true`、実行時に問題が発生しませんが、プロファイルの結果に影響を与えることができます。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー** : CorProf.idl、CorProf.h + + **ライブラリ:** CorGuids.lib + + **.NET framework のバージョン:**[!INCLUDE[net_current_v45plus](../../../../includes/net-current-v45plus-md.md)] + +## 関連項目 + [ICorProfilerCallback インターフェイス](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback-interface.md) + [ICorProfilerCallback4 インターフェイス](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback4-interface.md) + [JITCompilationStarted メソッド](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback-jitcompilationstarted-method.md) + [ReJITCompilationStarted メソッド](../../../../docs/framework/unmanaged-api/profiling/icorprofilercallback4-rejitcompilationstarted-method.md) diff --git a/docs/framework/unmanaged-api/wmi/beginenumeration.md b/docs/framework/unmanaged-api/wmi/beginenumeration.md new file mode 100644 index 00000000000..e75d8a50f6a --- /dev/null +++ b/docs/framework/unmanaged-api/wmi/beginenumeration.md @@ -0,0 +1,105 @@ +--- +title: "BeginEnumeration 関数 (アンマネージ API リファレンス)" +description: "BeginEnumeration 関数が列挙体の先頭に、列挙子をリセットします。" +ms.date: 11/06/2017 +ms.prod: .net-framework +ms.technology: dotnet-clr +ms.topic: reference +api_name: BeginEnumeration +api_location: WMINet_Utils.dll +api_type: DLLExport +f1_keywords: BeginEnumeration +helpviewer_keywords: BeginEnumeration function [.NET WMI and performance counters] +topic_type: Reference +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 12a742774bff22030bdfaaa34e431059e016a4bf +ms.sourcegitcommit: a53799f81351ad9afb3007cd68846ce6aeeb10cb +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/15/2017 +--- +# BeginEnumeration 関数 +列挙体の先頭に戻るには、列挙子をリセットします。 + +[!INCLUDE[internalonly-unmanaged](../../../../includes/internalonly-unmanaged.md)] + +## 構文 + +``` +HRESULT BeginEnumeration ( + [in] int vFunc, + [in] IWbemClassObject* ptr, + [in] LONG lEnumFlags +); +``` + +## パラメーター + +`vFunc` +[in]このパラメーターは使用されません。 + +`ptr`[in]ポインター、 [IWbemClassObject](https://msdn.microsoft.com/library/aa391433%28v=vs.85%29.aspx)インスタンス。 + +`lEnumFlags` +[in]フラグまたはで説明されている値のビットごとの組み合わせ、[解説](#remarks)列挙体に含まれるプロパティを制御するセクション。 + +## 戻り値 + +この関数によって返される次の値が定義されている、 *WbemCli.h*ヘッダー ファイル、またはすることができますに定義する定数として、コード。 + +|定数 |値 |説明 | +|---------|---------|---------| +|`WBEM_E_INVALID_PARAMETER` | 0x80041008 | フラグの組み合わせ`lEnumFlags`が無効か、無効な引数が指定されました。 | +|`WBEM_E_UNEXPECTED` | 0x8004101d | 2 番目の呼び出しに`BeginEnumeration`せずに中間の呼び出しが行われた[ `EndEnumeration`](endenumeration.md)です。 | +|`WBEM_E_OUT_OF_MEMORY` | 0x80041006 | 十分なメモリが新しい列挙体を開始します。 | +|`WBEM_S_NO_ERROR` | 0 | 関数呼び出しに成功しました。 | + +## コメント + +この関数への呼び出しをラップする、 [IWbemClassObject::BeginEnumeration](https://msdn.microsoft.com/library/aa391433%28v=vs.85%29.aspx)メソッドです。 + +フラグとして渡すことができる、`lEnumFlags`で引数が定義されている、 *WbemCli.h*ヘッダー ファイル、またはすることができますに定数としてコードで定義します。 その他のグループから任意のフラグを使って各グループから 1 つのフラグを組み合わせることができます。 ただし、同じグループにフラグは相互に排他的です。 + +**グループ 1** + +|定数 |値 |説明 | +|---------|---------|---------| +|`WBEM_FLAG_KEYS_ONLY` | 0x4 | キーのみを構成するプロパティが含まれます。 | +|`WBEM_FLAG_REFS_ONLY` | 0x8 | オブジェクト参照のみであるプロパティが含まれます。 | + +**グループ 2** + +定数 |値 |説明 | +|---------|---------|---------| +|`WBEM_FLAG_SYSTEM_ONLY` | 0x30 | システムのプロパティのみを列挙型を制限します。 | +|`WBEM_FLAG_NONSYSTEM_ONLY` | 0x40 | ローカルおよび伝達されたプロパティが含まれますが、列挙体からシステムのプロパティを除外します。 | + +クラス。 + +定数 |値 |説明 | +|---------|---------|---------| +|`WBEM_FLAG_CLASS_OVERRIDES_ONLY` | 0x100 | クラスの定義でオーバーライドされたプロパティ、列挙型を制限します。 | +|`WBEM_FLAG_CLASS_LOCAL_AND_OVERRIDES` | 0x100 | 現在のクラス定義でオーバーライドされたプロパティ、およびクラスで定義されている新しいプロパティに列挙型を制限します。 | +| `WBEM_MASK_CLASS_CONDITION` | 0x300 | A がに対して適用するマスク (フラグ) ではなく、`lEnumFlags`いずれかを確認する値`WBEM_FLAG_CLASS_OVERRIDES_ONLY`または`WBEM_FLAG_CLASS_LOCAL_AND_OVERRIDES`設定されています。 | +| `WBEM_FLAG_LOCAL_ONLY` | 0x10 | 定義またはクラス自身で変更されるプロパティ、列挙型を制限します。 | +| `WBEM_FLAG_PROPAGATED_ONLY` | 0x20 | 基本クラスから継承されたプロパティ、列挙型を制限します。 | + +インスタンス。 + +定数 |値 |説明 | +|---------|---------|---------| +| `WBEM_FLAG_LOCAL_ONLY` | 0x10 | 定義またはクラス自身で変更されるプロパティ、列挙型を制限します。 | +| `WBEM_FLAG_PROPAGATED_ONLY` | 0x20 | 基本クラスから継承されたプロパティ、列挙型を制限します。 | + + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** WMINet_Utils.idl + + **.NET framework のバージョン:**[!INCLUDE[net_current_v472plus](../../../../includes/net-current-v472plus.md)] + +## 関連項目 +[WMI およびパフォーマンス カウンター (アンマネージ API リファレンス)](index.md) diff --git a/docs/framework/unmanaged-api/wmi/qualifierset-delete.md b/docs/framework/unmanaged-api/wmi/qualifierset-delete.md new file mode 100644 index 00000000000..2ffb248fcb5 --- /dev/null +++ b/docs/framework/unmanaged-api/wmi/qualifierset-delete.md @@ -0,0 +1,75 @@ +--- +title: "QualifierSet_Delete 関数 (アンマネージ API リファレンス)" +description: "QualifierSet_Delete 関数は、名前で、修飾子を削除します。" +ms.date: 11/06/2017 +ms.prod: .net-framework +ms.technology: dotnet-clr +ms.topic: reference +api_name: QualifierSet_Delete +api_location: WMINet_Utils.dll +api_type: DLLExport +f1_keywords: QualifierSet_Delete +helpviewer_keywords: QualifierSet_Delete function [.NET WMI and performance counters] +topic_type: Reference +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 9245fc0ee109837249f1f3df400385c117a2f2d7 +ms.sourcegitcommit: a53799f81351ad9afb3007cd68846ce6aeeb10cb +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/15/2017 +--- +# QualifierSet_Delete 関数 +名前で指定された修飾子を削除します。 + +[!INCLUDE[internalonly-unmanaged](../../../../includes/internalonly-unmanaged.md)] + +## 構文 + +``` +HRESULT QualifierSet_Delete ( + [in] int vFunc, + [in] IWbemQualifierSet* ptr, + [in] LPCWSTR wszName +); +``` + +## パラメーター + +`vFunc` +[in]このパラメーターは使用されません。 + +`ptr` +[in]ポインター、 [IWbemQualifierSet](https://msdn.microsoft.com/library/aa391860(v=vs.85).aspx)インスタンス。 + +`wszName` +[in]削除する修飾子の名前。 + +## 戻り値 + +この関数によって返される次の値が定義されている、 *WbemCli.h*ヘッダー ファイル、またはすることができますに定義する定数として、コード。 + +|定数 |値 |説明 | +|---------|---------|---------| +|`WBEM_E_INVALID_PARAMETER` | 0x80041008 | `wszName`パラメーターが無効です。 | +|`WBEM_E_INVALID_OPERATION` | 0x80041016 | この修飾子を削除することはできません。 | +|`WBEM_E_NOT_FOUND` | 0x80041002 | 指定した修飾子が見つかりませんでした。 | +|`WBEM_S_NO_ERROR` | 0 | 関数呼び出しに成功しました。 | +| `WBEM_S_RESET_TO_DEFAULT` | 0x40002 | ローカルの上書きは削除され、親オブジェクトから元の修飾子がスコープを再開します。 | + +## コメント + +この関数への呼び出しをラップする、 [IWbemQualifierSet::Delete](https://msdn.microsoft.com/library/aa391864(v=vs.85).aspx)メソッドです。 + +修飾子の伝達の規則により、特定の修飾子可能性があります別のオブジェクトから継承されだけでは、現在のクラスまたはインスタンスでオーバーライドされます。 ここで、`QualifierSet_Delete`メソッドは、継承された値は元に、修飾子をリセットします。 関数は、この場合、ステータス コードを返します`WBEM_S_RESET_TO_DEFAULT`です。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** WMINet_Utils.idl + + **.NET framework のバージョン:**[!INCLUDE[net_current_v472plus](../../../../includes/net-current-v472plus.md)] + +## 関連項目 +[WMI およびパフォーマンス カウンター (アンマネージ API リファレンス)](index.md) diff --git a/docs/framework/unmanaged-api/wmi/spawnderivedclass.md b/docs/framework/unmanaged-api/wmi/spawnderivedclass.md new file mode 100644 index 00000000000..122df93be0f --- /dev/null +++ b/docs/framework/unmanaged-api/wmi/spawnderivedclass.md @@ -0,0 +1,81 @@ +--- +title: "SpawnDerivedClass 関数 (アンマネージ API リファレンス)" +description: "SpawnDerivedClass 関数は、オブジェクトから派生する新しいオブジェクトを作成します。" +ms.date: 11/06/2017 +ms.prod: .net-framework +ms.technology: dotnet-clr +ms.topic: reference +api_name: SpawnDerivedClass +api_location: WMINet_Utils.dll +api_type: DLLExport +f1_keywords: SpawnDerivedClass +helpviewer_keywords: SpawnDerivedClass function [.NET WMI and performance counters] +topic_type: Reference +author: rpetrusha +ms.author: ronpet +manager: wpickett +ms.openlocfilehash: 16f9a762c87e1e181202739b70cd978a80864f04 +ms.sourcegitcommit: a53799f81351ad9afb3007cd68846ce6aeeb10cb +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/15/2017 +--- +# SpawnDerivedClass 関数 +指定したオブジェクトから新しく派生クラス オブジェクトを作成します。 + +[!INCLUDE[internalonly-unmanaged](../../../../includes/internalonly-unmanaged.md)] + +## 構文 + +``` +HRESULT SpawnDerivedClass ( + [in] int vFunc, + [in] IWbemClassObject* ptr, + [in] LONG lFlags, + [out] IWbemClassObject** ppNewClass); +``` + +## パラメーター + +`vFunc` +[in]このパラメーターは使用されません。 + +`ptr` +[in]ポインター、 [IWbemClassObject](https://msdn.microsoft.com/library/aa391433%28v=vs.85%29.aspx)インスタンス。 + +`lFlags` +[in]予約されています。 このパラメーターは、0 を指定する必要があります。 + +`ppNewClass` +[out]新しいクラス定義のオブジェクトへのポインターを受け取ります。 エラーが発生する場合、新しいオブジェクトが返される、および`ppNewClass`左は変更されていません。 その値にすることはできません`null`です。 + +## 戻り値 + +この関数によって返される次の値が定義されている、 *WbemCli.h*ヘッダー ファイル、またはすることができますに定義する定数として、コード。 + +|定数 |値 |説明 | +|---------|---------|---------| +| `WBEM_E_FAILED` | 0x80041001 | 一般的なエラーが発生しました。 | +| `WBEM_E_INVALID_OPERATION` | 0x80041016 | インスタンスからのクラスの生成などの無効な操作が要求されました。 | +| `WBEM_E_INCOMPLETE_CLASS` | ソース クラスが完全に定義されているか、新しい派生クラスは許可されていないために、Windows の管理に登録されています。 | +| `WBEM_E_OUT_OF_MEMORY` | 0x80041006 | 操作を完了するのに十分なメモリがあります。 | +| `WBEM_E_INVALID_PARAMETER` | 0x80041008 | `ppNewClass` は `null` です。 | +| `WBEM_S_NO_ERROR` | 0 | 関数呼び出しに成功しました。 | + +## コメント + +この関数への呼び出しをラップする、 [IWbemClassObject::SpawnDerivedClass](https://msdn.microsoft.com/library/aa391436(v=vs.85).aspx)メソッドです。 + +`ptr`子オブジェクトの親クラスとなるクラス定義でなければなりません。 返されたオブジェクトでは、現在のオブジェクトのサブクラスになります。 + +返される新しいオブジェクト`ppNewClass`現在のオブジェクトのサブクラスに自動的になります。 この動作はオーバーライドできません。 サブクラス (派生クラス) を作成できる他の方法はありません。 + +## 要件 + **プラットフォーム:**を参照してください[システム要件](../../../../docs/framework/get-started/system-requirements.md)です。 + + **ヘッダー:** WMINet_Utils.idl + + **.NET framework のバージョン:**[!INCLUDE[net_current_v472plus](../../../../includes/net-current-v472plus.md)] + +## 関連項目 +[WMI およびパフォーマンス カウンター (アンマネージ API リファレンス)](index.md) diff --git a/docs/framework/wcf/deploying-wcf-applications-with-clickonce.md b/docs/framework/wcf/deploying-wcf-applications-with-clickonce.md index 4b2ec95e337..eb988786e23 100644 --- a/docs/framework/wcf/deploying-wcf-applications-with-clickonce.md +++ b/docs/framework/wcf/deploying-wcf-applications-with-clickonce.md @@ -1,26 +1,29 @@ ---- -title: "ClickOnce を使用して WCF アプリケーションを展開する | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "ClickOnce を使用して WCF アプリケーションを展開する" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 1a11feee-2a47-4d3e-a28a-ad69d5ff93e0 -caps.latest.revision: 7 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 7 ---- -# ClickOnce を使用して WCF アプリケーションを展開する -[!INCLUDE[indigo1](../../../includes/indigo1-md.md)] を使用しているクライアント アプリケーションは、ClickOnce テクノロジを使用して展開できます。このテクノロジを使用すると、クライアント アプリケーションが、信頼できる証明書でデジタル署名されている場合、コード アクセス セキュリティによって提供されるランタイム セキュリティ保護を受けられます。ClickOnce アプリケーションの署名に使用される証明書は、信頼された発行者のストアに存在する必要があり、またそのクライアント コンピューターのローカル セキュリティ ポリシーでは、発行者の証明書で署名されたアプリケーションに対して、完全信頼のアクセス許可が構成される必要があります。 +caps.latest.revision: "7" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: e7e419b1ca66e9d70b619e5841b8b984e06557f1 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# ClickOnce を使用して WCF アプリケーションを展開する +[!INCLUDE[indigo1](../../../includes/indigo1-md.md)] を使用しているクライアント アプリケーションは、ClickOnce テクノロジを使用して展開できます。 このテクノロジを使用すると、クライアント アプリケーションが、信頼できる証明書でデジタル署名されている場合、コード アクセス セキュリティによって提供されるランタイム セキュリティ保護を受けられます。 ClickOnce アプリケーションの署名に使用される証明書は、信頼された発行者のストアに存在する必要があり、またそのクライアント コンピューターのローカル セキュリティ ポリシーでは、発行者の証明書で署名されたアプリケーションに対して、完全信頼のアクセス許可が構成される必要があります。 - ClickOnce アプリケーションの構成と信頼された発行者の詳細については、「[Configuring ClickOnce Trusted Publishers](http://go.microsoft.com/fwlink/?LinkId=94774)」を参照してください。 + ClickOnce アプリケーションおよび信頼できる発行元の構成方法の詳細については、次を参照してください。 [ClickOnce 信頼された発行元の構成](http://go.microsoft.com/fwlink/?LinkId=94774)です。 -## 参照 - [信頼されたアプリケーションの配置の概要](http://go.microsoft.com/fwlink/?LinkId=94775) - [Windows フォーム アプリケーションの ClickOnce 配置](http://go.microsoft.com/fwlink/?LinkId=94776) \ No newline at end of file +## 関連項目 + [信頼されたアプリケーションの配置の概要](http://go.microsoft.com/fwlink/?LinkId=94775) + [ClickOnce 配置の Windows フォーム アプリケーション](http://go.microsoft.com/fwlink/?LinkId=94776) diff --git a/docs/framework/wcf/designing-service-contracts.md b/docs/framework/wcf/designing-service-contracts.md index 8f02a6f9ad8..b38302acab6 100644 --- a/docs/framework/wcf/designing-service-contracts.md +++ b/docs/framework/wcf/designing-service-contracts.md @@ -1,28 +1,33 @@ ---- -title: "サービス コントラクトの設計 | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "サービス コントラクト [WCF]" +--- +title: "サービス コントラクトの設計" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb +helpviewer_keywords: service contracts [WCF] ms.assetid: 8e89cbb9-ac84-4f0d-85ef-0eb6be0022fd -caps.latest.revision: 34 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 33 ---- -# サービス コントラクトの設計 -ここでは、サービス コントラクトの概要、定義方法、使用できる操作 \(および基になるメッセージ交換に対する影響\)、使用するデータ型、およびシナリオの要件を満たす操作を設計する際に役立つその他の問題について説明します。 - -## サービス コントラクトの作成 - サービスは複数の操作を公開します。[!INCLUDE[indigo1](../../../includes/indigo1-md.md)] アプリケーションでは、メソッドを作成し、 属性でマークすることによって操作を定義します。次に、サービス コントラクトを作成するために、 属性でマークされたインターフェイス内で操作を宣言するか、この属性でマークされたクラス内で操作を定義することにより、操作をグループ化します \(基本的な例については、「[方法 : サービス コントラクトを定義する](../../../docs/framework/wcf/how-to-define-a-wcf-service-contract.md)」を参照してください\)。 +caps.latest.revision: "34" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 92c48b625aeb3443a026e0d4ab06a8b7c1c2bf73 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# サービス コントラクトの設計 +ここでは、サービス コントラクトの概要、定義方法、使用できる操作 (および基になるメッセージ交換の影響)、使用するデータ型、およびシナリオの要件を満たす操作を設計する際に役立つその他の問題について説明します。 + +## サービス コントラクトの作成 + サービスは複数の操作を公開します。 [!INCLUDE[indigo1](../../../includes/indigo1-md.md)] アプリケーションでは、メソッドを作成し、 属性でマークすることによって操作を定義します。 次に、サービス コントラクトを作成するために、 属性でマークされたインターフェイス内で操作を宣言するか、この属性でマークされたクラス内で操作を定義することにより、操作をグループ化します (基本的な例では、次を参照してください[する方法: サービス コントラクトを定義する](../../../docs/framework/wcf/how-to-define-a-wcf-service-contract.md)。)。 属性を持たないメソッドはサービス操作ではないため、[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] サービスによって公開されることはありません。 @@ -38,8 +43,8 @@ caps.handback.revision: 33 - 操作の入力と出力の制限 -## クラスとインターフェイス - クラスとインターフェイスは、いずれも機能のグループ化を表します。したがって、どちらを使用しても [!INCLUDE[indigo2](../../../includes/indigo2-md.md)] サービス コントラクトを定義できます。ただし、インターフェイスはサービス コントラクトを直接モデル化するため、インターフェイスを使用することをお勧めします。実装のないインターフェイスは、特定のシグネチャを持つメソッドのグループ化を定義しているにすぎません。サービス コントラクト インターフェイスを実装してはじめて、[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] サービスを実装したことになります。 +## クラスとインターフェイス + クラスとインターフェイスは、いずれも機能のグループ化を表します。したがって、どちらを使用しても [!INCLUDE[indigo2](../../../includes/indigo2-md.md)] サービス コントラクトを定義できます。 ただし、インターフェイスはサービス コントラクトを直接モデル化するため、インターフェイスを使用することをお勧めします。 実装のないインターフェイスは、特定のシグネチャを持つメソッドのグループ化を定義しているにすぎません。 サービス コントラクト インターフェイスを実装してはじめて、[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] サービスを実装したことになります。 サービス コントラクト インターフェイスには、次のようにマネージ インターフェイスのあらゆる利点がもたらされます。 @@ -49,41 +54,41 @@ caps.handback.revision: 33 - インターフェイスの実装を変更することにより、同じサービス コントラクトを引き続き使用したまま、そのコントラクトの実装を変更できます。 -- 以前のインターフェイスと新しいインターフェイスを実装することで、サービスをバージョン管理できます。以前のクライアントは元のバージョンに接続し、新しいクライアントは新しいバージョンに接続できます。 +- 以前のインターフェイスと新しいインターフェイスを実装することで、サービスをバージョン管理できます。 以前のクライアントは元のバージョンに接続し、新しいクライアントは新しいバージョンに接続できます。 > [!NOTE] -> 他のサービス コントラクト インターフェイスから継承した場合、操作のプロパティ \(名前や名前空間など\) をオーバーライドすることはできません。これを行う場合は、現在のサービス コントラクトに新しい操作を作成します。 +> 他のサービス コントラクト インターフェイスから継承した場合、操作のプロパティ (名前や名前空間など) をオーバーライドすることはできません。 これを行う場合は、現在のサービス コントラクトに新しい操作を作成します。 - インターフェイスを使用したサービス コントラクトの作成[!INCLUDE[crexample](../../../includes/crexample-md.md)]、「[方法 : コントラクト インターフェイスを使用してサービスを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-service-with-a-contract-interface.md)」を参照してください。 + [!INCLUDE[crexample](../../../includes/crexample-md.md)]インターフェイスを使用して、サービス コントラクトを作成するを参照してください[する方法: コントラクト インターフェイスでサービスを作成](../../../docs/framework/wcf/feature-details/how-to-create-a-service-with-a-contract-interface.md)です。 - クラスを使用すると、サービス コントラクトの定義と実装を一度に行うことができます。 をそれぞれクラスとクラスのメソッドに直接適用してサービスを作成する方法には、サービスを迅速かつ簡単に作成できるという利点があります。欠点は、マネージ クラスでは複数の継承をサポートしていないため、サービス コントラクトを一度に 1 つしか実装できないことです。また、クラスまたはメソッド シグネチャに変更を加えると、そのサービスのパブリック コントラクトが変更されるため、変更されていないクライアントがサービスを使用できなくなることがあります。[!INCLUDE[crdefault](../../../includes/crdefault-md.md)][サービス コントラクトの実装](../../../docs/framework/wcf/implementing-service-contracts.md). + クラスを使用すると、サービス コントラクトの定義と実装を一度に行うことができます。 をそれぞれクラスとクラスのメソッドに直接適用してサービスを作成する方法には、サービスを迅速かつ簡単に作成できるという利点があります。 欠点は、マネージ クラスでは複数の継承をサポートしていないため、サービス コントラクトを一度に 1 つしか実装できないことです。 また、クラスまたはメソッド シグネチャに変更を加えると、そのサービスのパブリック コントラクトが変更されるため、変更されていないクライアントがサービスを使用できなくなることがあります。 [!INCLUDE[crdefault](../../../includes/crdefault-md.md)][サービス コントラクトを実装する](../../../docs/framework/wcf/implementing-service-contracts.md)です。 - クラスを使用してサービス コントラクトの作成と実装を一度に行う例については、「[方法 : コントラクト クラスを使用してサービスを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-wcf-contract-with-a-class.md)」を参照してください。 + 例については、クラスを使用して、サービス コントラクトを作成し、同時に実装する、次を参照してください。[する方法: コントラクト クラスでサービスを作成](../../../docs/framework/wcf/feature-details/how-to-create-a-wcf-contract-with-a-class.md)です。 - これで、サービス コントラクトを定義する際に、インターフェイスを使用した場合とクラスを使用した場合の違いがわかりました。次に、サービスとクライアント間で受け渡しできるデータを決定します。 + これで、サービス コントラクトを定義する際に、インターフェイスを使用した場合とクラスを使用した場合の違いがわかりました。 次に、サービスとクライアント間で受け渡しできるデータを決定します。 -## パラメーターと戻り値 - 各操作は戻り値とパラメーターを持ちます \(戻り値とパラメーターが `void` の場合も含まれます\)。ただし、オブジェクトへの参照をオブジェクト間で渡すことができるローカル メソッドとは異なり、サービス操作ではオブジェクトへの参照を渡しません。代わりに、オブジェクトのコピーを渡します。 +## パラメーターと戻り値 + 各操作は戻り値とパラメーターを持ちます (戻り値とパラメーターが `void` の場合も含まれます)。 ただし、オブジェクトへの参照をオブジェクト間で渡すことができるローカル メソッドとは異なり、サービス操作ではオブジェクトへの参照を渡しません。 代わりに、オブジェクトのコピーを渡します。 これが重要なのは、パラメーターまたは戻り値で使用される各型がシリアル化可能でなければならないためです。つまり、その型のオブジェクトをバイト ストリームに変換でき、バイト ストリームからオブジェクトに変換できる必要があります。 プリミティブ型は既定でシリアル化可能であり、.NET Framework の多くの型も同様です。 > [!NOTE] -> 操作シグネチャのパラメーター名の値はコントラクトに含まれ、大文字と小文字が区別されます。ローカルでは同じパラメーター名を使用するが、公開されるメタデータでは名前を変更する場合は、 を参照してください。 +> 操作シグネチャのパラメーター名の値はコントラクトに含まれ、大文字と小文字が区別されます。 ローカルでは同じパラメーター名を使用するが、公開されるメタデータでは名前を変更する場合は、 を参照してください。 -#### データ コントラクト - [!INCLUDE[indigo1](../../../includes/indigo1-md.md)] アプリケーションのようなサービス指向アプリケーションは、マイクロソフトとマイクロソフト以外の両方のプラットフォームで、できる限り多くのクライアント アプリケーションと相互運用できるように設計されています。最大限の相互運用性を実現するために、使用する型を 属性と 属性でマークして、データ コントラクトを作成することをお勧めします。データ コントラクトは、サービス コントラクトの一部であり、サービス操作で交換するデータを記述したものです。 +#### データ コントラクト + [!INCLUDE[indigo1](../../../includes/indigo1-md.md)] アプリケーションのようなサービス指向アプリケーションは、マイクロソフトとマイクロソフト以外の両方のプラットフォームで、できる限り多くのクライアント アプリケーションと相互運用できるように設計されています。 最大限の相互運用性を実現するために、使用する型を 属性と 属性でマークして、データ コントラクトを作成することをお勧めします。データ コントラクトは、サービス コントラクトの一部であり、サービス操作で交換するデータを記述したものです。 - データ コントラクトは opt\-in 方式のコントラクトです。つまり、データ コントラクト属性を明示的に適用しない限り、型またはデータ メンバーはシリアル化されません。データ コントラクトはマネージ コードのアクセス スコープとして関連付けられていません。プライベートのデータ メンバーはシリアル化され、パブリックにアクセスされる他の場所に送信されます \(データ コントラクトの基本的な例については、「[方法 : クラスまたは構造体に基本的なデータ コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-basic-data-contract-for-a-class-or-structure.md)」を参照してください\)。[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] は、基になる SOAP メッセージの定義を処理します。このメッセージにより、操作の機能が有効になるだけでなく、データ型とメッセージ本文との間での双方向のシリアル化が可能になります。使用するデータ型がシリアル化可能であれば、操作の設計時に、基盤となるメッセージ交換インフラストラクチャについて考える必要はありません。 + データ コントラクトは opt-in 方式のコントラクトです。つまり、データ コントラクト属性を明示的に適用しない限り、型またはデータ メンバーはシリアル化されません。 データ コントラクトはマネージ コードのアクセス スコープとして関連付けられていません。プライベートのデータ メンバーはシリアル化され、パブリックにアクセスされる他の場所に送信されます (データ コントラクトの基本的な例を参照してください[する方法: クラスまたは構造体に基本的なデータ コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-basic-data-contract-for-a-class-or-structure.md)。)。[!INCLUDE[indigo2](../../../includes/indigo2-md.md)]操作の機能を有効にする基になる SOAP メッセージの定義だけでなく、シリアル化データの種類に出入りするメッセージの本文を処理します。 使用するデータ型がシリアル化可能であれば、操作の設計時に、基盤となるメッセージ交換インフラストラクチャについて考える必要はありません。 - 通常の [!INCLUDE[indigo2](../../../includes/indigo2-md.md)] アプリケーションは 属性および 属性を使用して操作のデータ コントラクトを作成しますが、他のシリアル化機構を使用することもできます。、および の各標準機構はすべて、基になる SOAP メッセージへのデータ型のシリアル化を処理します。このメッセージはアプリケーション間でデータ型を伝達します。使用するデータ型で特別なサポートが必要な場合は、さらに多くのシリアル化方法を使用できます。[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] アプリケーションのデータ型をシリアル化するためのオプション[!INCLUDE[crabout](../../../includes/crabout-md.md)]、「[サービス コントラクトでのデータ転送の指定](../../../docs/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts.md)」を参照してください。 + 通常の [!INCLUDE[indigo2](../../../includes/indigo2-md.md)] アプリケーションは 属性および 属性を使用して操作のデータ コントラクトを作成しますが、他のシリアル化機構を使用することもできます。 、および の各標準機構はすべて、基になる SOAP メッセージへのデータ型のシリアル化を処理します。このメッセージはアプリケーション間でデータ型を伝達します。 使用するデータ型で特別なサポートが必要な場合は、さらに多くのシリアル化方法を使用できます。 [!INCLUDE[crabout](../../../includes/crabout-md.md)]内のデータ型のシリアル化の選択肢[!INCLUDE[indigo2](../../../includes/indigo2-md.md)]アプリケーションを参照してください[サービス コントラクトのデータ転送を指定する](../../../docs/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts.md)です。 -#### メッセージ交換へのパラメーターと戻り値のマッピング - サービス操作は、特定の標準セキュリティ、トランザクション、およびセッション関連の機能をサポートするためにアプリケーションが必要とするデータに加え、アプリケーション データをやり取りする SOAP メッセージの基になる交換によってサポートされます。このため、サービス操作のシグネチャでは、データ転送と操作に必要な機能をサポートできる、基になる*メッセージ交換パターン* \(MEP: Message Exchange Pattern\) を指定します。[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] プログラミング モデルでは、要求\/応答、一方向、および双方向の 3 つのメッセージ パターンを指定できます。 +#### メッセージ交換へのパラメーターと戻り値のマッピング + サービス操作は、特定の標準セキュリティ、トランザクション、およびセッション関連の機能をサポートするためにアプリケーションが必要とするデータに加え、アプリケーション データをやり取りする SOAP メッセージの基になる交換によってサポートされます。 これは大文字と小文字であるため、サービス操作のシグネチャは、基になるによって決まります*メッセージ交換パターン*(MEP)、データ転送と操作に必要な機能をサポートすることができます。 [!INCLUDE[indigo2](../../../includes/indigo2-md.md)] プログラミング モデルでは、要求/応答、一方向、および双方向の 3 つのメッセージ パターンを指定できます。 -##### 要求\/応答 - 要求\/応答パターンでは、要求の送信側 \(クライアント アプリケーション\) は、その要求に関連付けられた応答を受信します。このパターンでは、1 つの操作において、1 つ以上のパラメーターを操作に渡し、戻り値を呼び出し元に返すことができるため、このパターンが既定の MEP となります。たとえば、次の C\# コード例は、文字列を 1 つ受け取り、文字列を返す基本的なサービス操作を示しています。 +##### 要求/応答 + 要求/応答パターンでは、要求の送信側 (クライアント アプリケーション) は、その要求に関連付けられた応答を受信します。 このパターンでは、1 つの操作において、1 つ以上のパラメーターを操作に渡し、戻り値を呼び出し元に返すことができるため、このパターンが既定の MEP となります。 たとえば、次の C# コード例は、文字列を 1 つ受け取り、文字列を返す基本的なサービス操作を示しています。 ```csharp [OperationContractAttribute] @@ -97,9 +102,9 @@ string Hello(string greeting); Function Hello (ByVal greeting As String) As String ``` - この操作シグネチャは、基になるメッセージ交換の形式を指定しています。相関関係がない場合、[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] は戻り値の対象となる操作を特定できません。 + この操作シグネチャは、基になるメッセージ交換の形式を指定しています。 相関関係がない場合、[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] は戻り値の対象となる操作を特定できません。 - 別の基になるメッセージ パターンを指定しない限り、`void` \([!INCLUDE[vbprvb](../../../includes/vbprvb-md.md)] では `Nothing`\) を返すサービス操作も要求\/応答メッセージ交換です。クライアントが操作を非同期で呼び出していない場合、通常、メッセージが空の場合でも、戻りメッセージを受信するまでクライアントは処理を中止します。クライアントが応答で空のメッセージを受信するまで制御が戻らない操作の C\# コード例を次に示します。 + 別の基になるメッセージ パターンを指定しない限り、`void` (`Nothing` では [!INCLUDE[vbprvb](../../../includes/vbprvb-md.md)]) を返すサービス操作も要求/応答メッセージ交換です。 クライアントが操作を非同期で呼び出していない場合、通常、メッセージが空の場合でも、戻りメッセージを受信するまでクライアントは処理を中止します。 クライアントが応答で空のメッセージを受信するまで制御が戻らない操作の C# コード例を次に示します。 ```csharp [OperationContractAttribute] @@ -113,16 +118,16 @@ void Hello(string greeting); Sub Hello (ByVal greeting As String) ``` - 上記の例では、実行に時間のかかる操作の場合に、クライアントのパフォーマンスと応答性が低下するおそれがありますが、要求\/応答操作で `void` を返す場合でも、この操作には利点があります。最も明らかな利点は、応答メッセージで SOAP エラーを返すことが可能であるということです。これにより、通信と処理のどちらで発生したかに関係なく、サービス関連の何らかのエラー状態が発生したことがわかります。サービス コントラクトに指定された SOAP エラーは、 オブジェクトとしてクライアント アプリケーションに渡されます。このオブジェクトの型パラメーターは、サービス コントラクトで指定された型です。これにより、[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] サービスのエラー状態をクライアントに通知しやすくなります。例外、SOAP エラー、およびエラー処理[!INCLUDE[crabout](../../../includes/crabout-md.md)]、「[コントラクトおよびサービスのエラーの指定と処理](../../../docs/framework/wcf/specifying-and-handling-faults-in-contracts-and-services.md)」を参照してください。要求\/応答サービスおよびクライアントの例については、「[方法 : 要求\/応答コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-request-reply-contract.md)」を参照してください。要求\/応答パターンに関する問題[!INCLUDE[crabout](../../../includes/crabout-md.md)]、「[要求\/応答サービス](../../../docs/framework/wcf/feature-details/request-reply-services.md)」を参照してください。 + 上記の例では、実行に時間のかかる操作の場合に、クライアントのパフォーマンスと応答性が低下するおそれがありますが、要求/応答操作で `void` を返す場合でも、この操作には利点があります。 最も明らかな利点は、応答メッセージで SOAP エラーを返すことが可能であるということです。これにより、通信と処理のどちらで発生したかに関係なく、サービス関連の何らかのエラー状態が発生したことがわかります。 サービス コントラクトに指定された SOAP エラーは、 オブジェクトとしてクライアント アプリケーションに渡されます。このオブジェクトの型パラメーターは、サービス コントラクトで指定された型です。 これにより、[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] サービスのエラー状態をクライアントに通知しやすくなります。 [!INCLUDE[crabout](../../../includes/crabout-md.md)]例外、SOAP エラー、およびエラー処理を参照してください。[を指定すると処理のエラー コントラクトおよびサービスの](../../../docs/framework/wcf/specifying-and-handling-faults-in-contracts-and-services.md)します。 要求/応答サービスとクライアントの例を参照してください[する方法: 要求/応答コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-request-reply-contract.md)です。 [!INCLUDE[crabout](../../../includes/crabout-md.md)]要求/応答パターンで問題を参照してください[要求/応答サービス](../../../docs/framework/wcf/feature-details/request-reply-services.md)です。 -##### 一方向 - [!INCLUDE[indigo2](../../../includes/indigo2-md.md)] サービス アプリケーションのクライアントが操作の完了まで待機する必要がなく、SOAP エラーも処理しない場合は、操作で一方向メッセージ パターンを指定できます。一方向操作では、クライアントが操作を呼び出し、[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] がメッセージをネットワークに書き込んだら、クライアントは処理を続行できます。通常、これは、送信メッセージで送信するデータが膨大な量でない限り、\(データ送信時にエラーが発生しなければ\) クライアントはほぼすぐに実行を続けることを意味します。この種のメッセージ交換パターンでは、クライアントからサービス アプリケーションへのイベントのような動作をサポートします。 +##### 一方向 + [!INCLUDE[indigo2](../../../includes/indigo2-md.md)] サービス アプリケーションのクライアントが操作の完了まで待機する必要がなく、SOAP エラーも処理しない場合は、操作で一方向メッセージ パターンを指定できます。 一方向操作では、クライアントが操作を呼び出し、[!INCLUDE[indigo2](../../../includes/indigo2-md.md)] がメッセージをネットワークに書き込んだら、クライアントは処理を続行できます。 通常、これは、送信メッセージで送信するデータが膨大な量でない限り、(データ送信時にエラーが発生しなければ) クライアントはほぼすぐに実行を続けることを意味します。 この種のメッセージ交換パターンでは、クライアントからサービス アプリケーションへのイベントのような動作をサポートします。 1 つのメッセージを送信し、何も受信しないメッセージ交換では、`void` 以外の戻り値を指定したサービス操作をサポートすることはできません。この場合、 例外がスローされます。 - 戻りメッセージがないということは、処理または通信時のエラーを示すために SOAP エラーを返すこともできないということです \(操作が一方向操作の場合にエラー情報を伝達するには、双方向メッセージ交換パターンが必要です\)。 + 戻りメッセージがないということは、処理または通信時のエラーを示すために SOAP エラーを返すこともできないということです (操作が一方向操作の場合にエラー情報を伝達するには、双方向メッセージ交換パターンが必要です)。 - `void` を返す操作で一方向メッセージ交換を指定するには、次の C\# コード例に示すように、 プロパティを `true` に設定します。 + `void` を返す操作で一方向メッセージ交換を指定するには、次の C# コード例に示すように、 プロパティを `true` に設定します。 ```csharp [OperationContractAttribute(IsOneWay=true)] @@ -136,24 +141,24 @@ void Hello(string greeting); Sub Hello (ByVal greeting As String) ``` - このメソッドは、前述の要求\/応答の例と同じです。ただし、 プロパティを `true` に設定するということは、メソッドは同じでも、サービス操作は戻りメッセージを送信せず、送信メッセージがチャネル レイヤーに渡されると、すぐにクライアントに制御が戻ることを意味します。例については、「[方法 : 一方向コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-one-way-contract.md)」を参照してください。一方向デザイン パターン[!INCLUDE[crabout](../../../includes/crabout-md.md)]、「[一方向サービス](../../../docs/framework/wcf/feature-details/one-way-services.md)」を参照してください。 + このメソッドは、前述の要求/応答の例と同じです。ただし、 プロパティを `true` に設定するということは、メソッドは同じでも、サービス操作は戻りメッセージを送信せず、送信メッセージがチャネル レイヤーに渡されると、すぐにクライアントに制御が戻ることを意味します。 例については、次を参照してください。[する方法: 一方向コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-one-way-contract.md)です。 [!INCLUDE[crabout](../../../includes/crabout-md.md)]一方向のパターンを参照してください[一方向サービス](../../../docs/framework/wcf/feature-details/one-way-services.md)です。 -##### 双方向 - 双方向パターンの特徴は、一方向メッセージングと要求\/応答メッセージングのどちらを使用しているかに関係なく、サービスとクライアントが共に独立して、相互にメッセージを送信できるという点です。二方向通信のこの形式は、サービスがクライアントと直接通信する必要がある場合や、イベントのような動作など、メッセージを交換するどちらの側も非同期で動作できるようにする場合に役立ちます。 +##### 二重 + 双方向パターンの特徴は、一方向メッセージングと要求/応答メッセージングのどちらを使用しているかに関係なく、サービスとクライアントが共に独立して、相互にメッセージを送信できるという点です。 二方向通信のこの形式は、サービスがクライアントと直接通信する必要がある場合や、イベントのような動作など、メッセージを交換するどちらの側も非同期で動作できるようにする場合に役立ちます。 - 双方向パターンでは、クライアントと通信するための機構が別途必要になるため、要求\/応答パターンや一方向パターンに比べると若干複雑になります。 + 双方向パターンでは、クライアントと通信するための機構が別途必要になるため、要求/応答パターンや一方向パターンに比べると若干複雑になります。 - 双方向コントラクトを設計する場合、コールバック コントラクトも設計し、そのコールバック コントラクトの型を、サービス コントラクトをマークする 属性の プロパティに割り当てる必要があります。 + 双方向コントラクトを設計する場合、コールバック コントラクトも設計し、そのコールバック コントラクトの型を、サービス コントラクトをマークする 属性の プロパティに割り当てる必要があります。 双方向パターンを実装するには、クライアントで呼び出されるメソッド宣言を含む 2 つ目のインターフェイスを作成する必要があります。 - サービス、およびそのサービスにアクセスするクライアントの作成方法[!INCLUDE[crexample](../../../includes/crexample-md.md)]、「[方法 : 双方向コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-duplex-contract.md)」および「[方法 : 双方向コントラクトを使用してサービスにアクセスする](../../../docs/framework/wcf/feature-details/how-to-access-services-with-a-duplex-contract.md)」を参照してください。実際に動作するサンプルについては、「[二重](../../../docs/framework/wcf/samples/duplex.md)」を参照してください。双方向コントラクトの使用に関する問題[!INCLUDE[crabout](../../../includes/crabout-md.md)]、「[双方向サービス](../../../docs/framework/wcf/feature-details/duplex-services.md)」を参照してください。 + [!INCLUDE[crexample](../../../includes/crexample-md.md)]サービス、およびそのサービスにアクセスするクライアントを作成するを参照してください[する方法: 双方向コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-duplex-contract.md)と[する方法: 双方向コントラクトでサービスをアクセス](../../../docs/framework/wcf/feature-details/how-to-access-services-with-a-duplex-contract.md)です。 作業用サンプルについては、次を参照してください。[双方向](../../../docs/framework/wcf/samples/duplex.md)です。 [!INCLUDE[crabout](../../../includes/crabout-md.md)]二重のコントラクトを使用して、問題を参照してください[双方向サービス](../../../docs/framework/wcf/feature-details/duplex-services.md)です。 > [!CAUTION] -> サービスは、双方向メッセージを受信すると、その受信メッセージの `ReplyTo` 要素を参照して応答の送信先を決定します。メッセージの受信に使用するチャネルがセキュリティで保護されていない場合、信頼関係のないクライアントが対象コンピューターの `ReplyTo` を使用して悪意のあるメッセージを送信し、その対象コンピューターのサービス拒否 \(DOS: Denial Of Service\) を引き起こすおそれがあります。 +> サービスは、双方向メッセージを受信すると、その受信メッセージの `ReplyTo` 要素を参照して応答の送信先を決定します。 メッセージの受信に使用するチャネルがセキュリティで保護されていない場合、信頼関係のないクライアントが対象コンピューターの `ReplyTo` を使用して悪意のあるメッセージを送信し、その対象コンピューターのサービス拒否 (DOS: Denial Of Service) を引き起こすおそれがあります。 -##### Out パラメーターと Ref パラメーター - ほとんどの場合、`in` パラメーター \([!INCLUDE[vbprvb](../../../includes/vbprvb-md.md)] では `ByVal`\) および `out` パラメーターと `ref` パラメーター \([!INCLUDE[vbprvb](../../../includes/vbprvb-md.md)] では `ByRef`\) を使用できます。`out` パラメーターと `ref` パラメーターは、操作からデータが返されることを示すため、操作シグネチャが `void` を返す場合でも、次のような操作シグネチャによって要求\/応答操作が必要であることを指定します。 +##### Out パラメーターと Ref パラメーター + ほとんどの場合、`in` パラメーター (`ByVal` では [!INCLUDE[vbprvb](../../../includes/vbprvb-md.md)]) および `out` パラメーターと `ref` パラメーター (`ByRef` では [!INCLUDE[vbprvb](../../../includes/vbprvb-md.md)]) を使用できます。 `out` パラメーターと `ref` パラメーターは、操作からデータが返されることを示すため、操作シグネチャが `void` を返す場合でも、次のような操作シグネチャによって要求/応答操作が必要であることを指定します。 ```csharp [ServiceContractAttribute] @@ -166,8 +171,6 @@ public interface IMyContract 次のコードは同等の Visual Basic コードです。 - \[Visual Basic\] - ```vb _ Public Interface IMyContract @@ -176,17 +179,17 @@ Public Interface IMyContract End Interface ``` - 唯一の例外は、シグネチャに特定の構造体が含まれている場合です。たとえば、 バインディングを使用してクライアントと通信できるのは、操作の宣言に使用されたメソッドが `void` を返す場合だけです。戻り値、`ref` パラメーター、または `out` パラメーターのいずれであるかに関係なく、出力値を指定することはできません。 + 唯一の例外は、シグネチャに特定の構造体が含まれている場合です。 たとえば、 バインディングを使用してクライアントと通信できるのは、操作の宣言に使用されたメソッドが `void` を返す場合だけです。戻り値、`ref` パラメーター、または `out` パラメーターのいずれであるかに関係なく、出力値を指定することはできません。 - また、`out` パラメーターまたは `ref` パラメーターを使用する場合、操作には基になる応答メッセージが必要です。このメッセージが変更されたオブジェクトを返します。操作が一方向操作の場合、実行時に 例外がスローされます。 + また、`out` パラメーターまたは `ref` パラメーターを使用する場合、操作には基になる応答メッセージが必要です。このメッセージが変更されたオブジェクトを返します。 操作が一方向操作の場合、実行時に 例外がスローされます。 -### コントラクトでのメッセージ保護レベルの指定 - コントラクトの設計時に、コントラクトを実装するサービスのメッセージ保護レベルも決定する必要があります。これは、メッセージ セキュリティをコントラクトのエンドポイントのバインディングに適用する場合にのみ必要です。バインディングのセキュリティが無効になっている場合 \(つまり、システム指定のバインディングで の値が に設定されている場合\)、コントラクトのメッセージ保護レベルを決定する必要はありません。ほとんどの場合、メッセージ レベルのセキュリティが適用されたシステム指定のバインディングは、十分な保護レベルを備えているため、操作ごとまたはメッセージごとに保護レベルを検討する必要はありません。 +### コントラクトでのメッセージ保護レベルの指定 + コントラクトの設計時に、コントラクトを実装するサービスのメッセージ保護レベルも決定する必要があります。 これは、メッセージ セキュリティをコントラクトのエンドポイントのバインディングに適用する場合にのみ必要です。 バインディングのセキュリティが無効になっている場合 (つまり、システム指定のバインディングで の値が に設定されている場合)、コントラクトのメッセージ保護レベルを決定する必要はありません。 ほとんどの場合、メッセージ レベルのセキュリティが適用されたシステム指定のバインディングは、十分な保護レベルを備えているため、操作ごとまたはメッセージごとに保護レベルを検討する必要はありません。 - 保護レベルは、サービスをサポートするメッセージ \(またはメッセージ部分\) が署名されるのか、署名および暗号化されるのか、または署名と暗号化なしで送信されるのかを指定する値です。保護レベルは、さまざまなスコープ \(サービス レベル、特定の操作、その操作内のメッセージ、またはメッセージ部分\) で設定できます。あるスコープで設定された値は、明示的にオーバーライドしない限り、そのスコープよりも小さなスコープの既定値になります。コントラクトに必要とされる最小限の保護レベルをバインディング構成で提供できない場合は、例外がスローされます。保護レベルの値がコントラクトで明示的に設定されていない場合、バインディングのメッセージ セキュリティが有効であれば、バインディング構成によってすべてのメッセージの保護レベルが制御されます。これが既定の動作です。 + 保護レベルは、サービスをサポートするメッセージ (またはメッセージ部分) が署名されるのか、署名および暗号化されるのか、または署名と暗号化なしで送信されるのかを指定する値です。 保護レベルは、さまざまなスコープ (サービス レベル、特定の操作、その操作内のメッセージ、またはメッセージ部分) で設定できます。 あるスコープで設定された値は、明示的にオーバーライドしない限り、そのスコープよりも小さなスコープの既定値になります。 コントラクトに必要とされる最小限の保護レベルをバインディング構成で提供できない場合は、例外がスローされます。 保護レベルの値がコントラクトで明示的に設定されていない場合、バインディングのメッセージ セキュリティが有効であれば、バインディング構成によってすべてのメッセージの保護レベルが制御されます。 これが既定の動作です。 > [!IMPORTANT] -> 一般に、コントラクトのさまざまなスコープを完全な保護レベルである よりも下のレベルに明示的に設定するかどうかは、パフォーマンスの向上と引き換えに、ある程度のセキュリティで妥協できるかどうかという判断によって決まります。このような場合、操作および操作で交換するデータの価値に焦点を絞って判断を下す必要があります。[!INCLUDE[crdefault](../../../includes/crdefault-md.md)][サービスのセキュリティ保護](../../../docs/framework/wcf/securing-services.md). +> 一般に、コントラクトのさまざまなスコープを完全な保護レベルである よりも下のレベルに明示的に設定するかどうかは、パフォーマンスの向上と引き換えに、ある程度のセキュリティで妥協できるかどうかという判断によって決まります。 このような場合、操作および操作で交換するデータの価値に焦点を絞って判断を下す必要があります。 [!INCLUDE[crdefault](../../../includes/crdefault-md.md)][Services のセキュリティ保護](../../../docs/framework/wcf/securing-services.md)です。 たとえば、次のコード例では、 も、コントラクトの プロパティも設定していません。 @@ -204,8 +207,6 @@ public interface ISampleService 次のコードは同等の Visual Basic コードです。 - \[Visual Basic\] - ```vb _ Public Interface ISampleService @@ -217,12 +218,11 @@ Public Interface ISampleService Public Function GetData() As Integer End Interface - ``` - 既定の \(既定の \) を使用するエンドポイントの `ISampleService` 実装とやり取りする場合は、暗号化と署名が既定の保護レベルであるため、すべてのメッセージが暗号化および署名されます。ただし、既定の \(既定の \) を使用して `ISampleService` サービスを使用すると、すべてのメッセージがテキストとして送信されます。これは、このバインディングにはセキュリティがないため、保護レベルが無視されるためです \(つまり、メッセージの暗号化も署名も行われません\)。 に変更すると、これがこのバインディングの既定の保護レベルになるため、これらのメッセージは暗号化および署名されるようになります。 + 既定の `ISampleService` (既定の ) を使用するエンドポイントの 実装とやり取りする場合は、暗号化と署名が既定の保護レベルであるため、すべてのメッセージが暗号化および署名されます。 ただし、既定の `ISampleService` (既定の ) を使用して サービスを使用すると、すべてのメッセージがテキストとして送信されます。これは、このバインディングにはセキュリティがないため、保護レベルが無視されるためです (つまり、メッセージの暗号化も署名も行われません)。 に変更すると、これがこのバインディングの既定の保護レベルになるため、これらのメッセージは暗号化および署名されるようになります。 - コントラクトの保護要件を明示的に指定または調整する場合は、 プロパティ \(またはより小さなスコープの `ProtectionLevel` プロパティのいずれか\) をサービス コントラクトに必要なレベルに設定します。この場合、明示的な設定を使用するには、使用するスコープに少なくともその設定をサポートするバインディングが必要です。たとえば、次のコード例では、`GetGuid` 操作の の値を明示的に指定しています。 + コントラクトの保護要件を明示的に指定または調整する場合は、 プロパティ (またはより小さなスコープの `ProtectionLevel` プロパティのいずれか) をサービス コントラクトに必要なレベルに設定します。 この場合、明示的な設定を使用するには、使用するスコープに少なくともその設定をサポートするバインディングが必要です。 たとえば、次のコード例では、 操作の `GetGuid` の値を明示的に指定しています。 ```csharp [ServiceContract] @@ -256,36 +256,35 @@ Public Interface IExplicitProtectionLevelSampleService End Function End Interface - ``` - この `IExplicitProtectionLevelSampleService` コントラクトを実装し、既定の \(既定の \) を使用するエンドポイントを持つサービスの動作は次のようになります。 + この `IExplicitProtectionLevelSampleService` コントラクトを実装し、既定の (既定の ) を使用するエンドポイントを持つサービスの動作は次のようになります。 - `GetString` 操作のメッセージは、暗号化および署名されます。 -- `GetInt` 操作のメッセージは、暗号化も署名もされない \(プレーン\) テキストとして送信されます。 +- `GetInt` 操作のメッセージは、暗号化も署名もされない (プレーン) テキストとして送信されます。 -- `GetGuid` 操作の は、暗号化および署名されたメッセージで返されます。 +- `GetGuid` 操作の は、暗号化および署名されたメッセージで返されます。 - 保護レベルとその使用方法[!INCLUDE[crabout](../../../includes/crabout-md.md)]、「[保護レベルの理解](../../../docs/framework/wcf/understanding-protection-level.md)」を参照してください。セキュリティ[!INCLUDE[crabout](../../../includes/crabout-md.md)]、「[サービスのセキュリティ保護](../../../docs/framework/wcf/securing-services.md)」を参照してください。 + [!INCLUDE[crabout](../../../includes/crabout-md.md)]保護レベルと、その使用方法を参照してください。[について保護レベル](../../../docs/framework/wcf/understanding-protection-level.md)です。 [!INCLUDE[crabout](../../../includes/crabout-md.md)]セキュリティを参照してください[Services のセキュリティ保護](../../../docs/framework/wcf/securing-services.md)です。 -##### 操作シグネチャのその他の要件 - アプリケーションの一部の機能では、特定の種類の操作シグネチャを必要とします。たとえば、 バインディングは、永続的なサービスとクライアントをサポートします。永続的なサービスとクライアントでは、通信の途中でアプリケーションを再起動し、メッセージを失うことなく、アプリケーションが中止された場所を検出できます \([!INCLUDE[crdefault](../../../includes/crdefault-md.md)][WCF のキュー](../../../docs/framework/wcf/feature-details/queues-in-wcf.md).\)ただし、永続的操作では、`in` パラメーターを 1 つしか受け取ることができず、戻り値を持つこともできません。 +##### 操作シグネチャのその他の要件 + アプリケーションの一部の機能では、特定の種類の操作シグネチャを必要とします。 たとえば、 バインディングは、永続的なサービスとクライアントをサポートします。永続的なサービスとクライアントでは、通信の途中でアプリケーションを再起動し、メッセージを失うことなく、アプリケーションが中止された場所を検出できます ([!INCLUDE[crdefault](../../../includes/crdefault-md.md)] [WCF のキュー](../../../docs/framework/wcf/feature-details/queues-in-wcf.md))。ただし、永続的操作では、`in` パラメーターを 1 つしか受け取ることができず、戻り値を持つこともできません。 - もう 1 つの例として、操作における 型の使用が挙げられます。 パラメーターにはメッセージの本文全体が含まれるため、入力または出力 \(つまり、`ref` パラメーター、`out` パラメーター、または戻り値\) が 型である場合、操作で指定された入力または出力に限定する必要があります。また、パラメーターまたは戻り値の型は のいずれかである必要があります。ストリーム[!INCLUDE[crabout](../../../includes/crabout-md.md)]、「[大規模データとストリーミング](../../../docs/framework/wcf/feature-details/large-data-and-streaming.md)」を参照してください。 + もう 1 つの例として、操作における 型の使用が挙げられます。 パラメーターにはメッセージの本文全体が含まれるため、入力または出力 (つまり、`ref` パラメーター、`out` パラメーター、または戻り値) が 型である場合、操作で指定された入力または出力に限定する必要があります。 また、パラメーターまたは戻り値の型は のいずれかである必要があります。 [!INCLUDE[crabout](../../../includes/crabout-md.md)]ストリームを参照してください[大量のデータとストリーミング](../../../docs/framework/wcf/feature-details/large-data-and-streaming.md)です。 -##### 名前、名前空間、および隠ぺい - コントラクトおよび操作の定義内の .NET 型の名前や名前空間は、コントラクトが WSDL に変換されるとき、およびコントラクト メッセージが作成および送信されるときに重要になります。したがって、サービス コントラクトの名前と名前空間は、 などの、すべてのサポート対象コントラクト属性や、他のコントラクト属性の `Name` プロパティと `Namespace` プロパティを使用して明示的に設定することを強くお勧めします。 +##### 名前、名前空間、および難読化 + コントラクトおよび操作の定義内の .NET 型の名前や名前空間は、コントラクトが WSDL に変換されるとき、およびコントラクト メッセージが作成および送信されるときに重要になります。 したがって、サービス コントラクトの名前と名前空間は、`Name`、`Namespace`、 などの、すべてのサポート対象コントラクト属性や、他のコントラクト属性の プロパティと プロパティを使用して明示的に設定することを強くお勧めします。 - この 1 つの結果として、名前と名前空間が明示的に設定されていない場合、アセンブリで IL 隠ぺいを使用すると、コントラクトの型名と名前空間が変更され、その結果、WSDL が変更され、通常はネットワークでのメッセージ交換に失敗します。コントラクトの名前と名前空間を明示的に設定せずに隠ぺいを使用する場合は、 属性と 属性を使用して、コントラクトの型名と名前空間が変更されないようにします。 + この 1 つの結果として、名前と名前空間が明示的に設定されていない場合、アセンブリで IL 隠ぺいを使用すると、コントラクトの型名と名前空間が変更され、その結果、WSDL が変更され、通常はネットワークでのメッセージ交換に失敗します。 コントラクトの名前と名前空間を明示的に設定せずに隠ぺいを使用する場合は、 属性と 属性を使用して、コントラクトの型名と名前空間が変更されないようにします。 -## 参照 - [方法 : 要求\/応答コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-request-reply-contract.md) - [方法 : 一方向コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-one-way-contract.md) - [方法 : 双方向コントラクトを作成する](../../../docs/framework/wcf/feature-details/how-to-create-a-duplex-contract.md) - [サービス コントラクトでのデータ転送の指定](../../../docs/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts.md) - [コントラクトおよびサービスのエラーの指定と処理](../../../docs/framework/wcf/specifying-and-handling-faults-in-contracts-and-services.md) - [セッションの使用](../../../docs/framework/wcf/using-sessions.md) - [同期操作と非同期操作](../../../docs/framework/wcf/synchronous-and-asynchronous-operations.md) - [信頼できるサービス](../../../docs/framework/wcf/reliable-services.md) - [サービスとトランザクション](../../../docs/framework/wcf/services-and-transactions.md) \ No newline at end of file +## 関連項目 + [方法: 要求/応答コントラクトを作成します。](../../../docs/framework/wcf/feature-details/how-to-create-a-request-reply-contract.md) + [方法: 一方向コントラクトを作成します。](../../../docs/framework/wcf/feature-details/how-to-create-a-one-way-contract.md) + [方法: 双方向コントラクトを作成します。](../../../docs/framework/wcf/feature-details/how-to-create-a-duplex-contract.md) + [サービス コントラクトで指定するデータを転送します。](../../../docs/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts.md) + [コントラクトおよびサービスのエラーの指定と処理](../../../docs/framework/wcf/specifying-and-handling-faults-in-contracts-and-services.md) + [セッションの使用](../../../docs/framework/wcf/using-sessions.md) + [同期操作と非同期操作](../../../docs/framework/wcf/synchronous-and-asynchronous-operations.md) + [信頼できるサービス](../../../docs/framework/wcf/reliable-services.md) + [サービスとトランザクション](../../../docs/framework/wcf/services-and-transactions.md) diff --git a/docs/framework/wcf/diagnostics/event-logging/coordinatorrecoverylogentrycreationfailure.md b/docs/framework/wcf/diagnostics/event-logging/coordinatorrecoverylogentrycreationfailure.md index 982a4a10065..681a5204801 100644 --- a/docs/framework/wcf/diagnostics/event-logging/coordinatorrecoverylogentrycreationfailure.md +++ b/docs/framework/wcf/diagnostics/event-logging/coordinatorrecoverylogentrycreationfailure.md @@ -1,31 +1,34 @@ ---- -title: "CoordinatorRecoveryLogEntryCreationFailure | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: CoordinatorRecoveryLogEntryCreationFailure +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 9f2b1a5c-f5a6-4203-87ff-601635b9ae40 -caps.latest.revision: 6 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 6 ---- -# CoordinatorRecoveryLogEntryCreationFailure -ID : 140 +caps.latest.revision: "6" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: a7bfe522728434e1b1736b97342b25e2aadff4b5 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# CoordinatorRecoveryLogEntryCreationFailure +Id: 140 重大度 : エラー カテゴリ : TransactionBridge -## 説明 - 回復ログのエントリを、コーディネーターの登録用に生成できませんでした。トランザクションは中止されます。イベントには、トランザクション ID、理由、例外、プロセス名、およびプロセス ID が表示されます。 +## 説明 + 回復ログのエントリを、コーディネーターの登録用に生成できませんでした。 トランザクションは中止されます。 イベントには、トランザクション ID、理由、例外、プロセス名、およびプロセス ID が表示されます。 -## 参照 - [イベント ログ](../../../../../docs/framework/wcf/diagnostics/event-logging/index.md) - [イベント一覧](../../../../../docs/framework/wcf/diagnostics/event-logging/events-general-reference.md) \ No newline at end of file +## 関連項目 + [イベントのログ記録](../../../../../docs/framework/wcf/diagnostics/event-logging/index.md) + [イベントの一般的なリファレンス](../../../../../docs/framework/wcf/diagnostics/event-logging/events-general-reference.md) diff --git a/docs/framework/wcf/diagnostics/event-logging/performancecounterinitializationfailure.md b/docs/framework/wcf/diagnostics/event-logging/performancecounterinitializationfailure.md index 45b7a77642c..c9e73b044d6 100644 --- a/docs/framework/wcf/diagnostics/event-logging/performancecounterinitializationfailure.md +++ b/docs/framework/wcf/diagnostics/event-logging/performancecounterinitializationfailure.md @@ -1,31 +1,34 @@ ---- -title: "PerformanceCounterInitializationFailure | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: PerformanceCounterInitializationFailure +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 85050ac6-7f7b-4dd3-8e5e-f5116d7c9906 -caps.latest.revision: 6 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 6 ---- -# PerformanceCounterInitializationFailure -ID : 149 +caps.latest.revision: "6" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: bae3d18f4929a741a5bead5c3c150f50d189f3a3 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# PerformanceCounterInitializationFailure +Id: 149 重大度 : エラー カテゴリ : TransactionBridge -## 説明 - このイベントは、パフォーマンス カウンターを初期化できなかったことを示します。イベントには、カウンター名、例外、プロセス名、およびプロセス ID が表示されます。 +## 説明 + このイベントは、パフォーマンス カウンターを初期化できなかったことを示します。 イベントには、カウンター名、例外、プロセス名、およびプロセス ID が表示されます。 -## 参照 - [イベント ログ](../../../../../docs/framework/wcf/diagnostics/event-logging/index.md) - [イベント一覧](../../../../../docs/framework/wcf/diagnostics/event-logging/events-general-reference.md) \ No newline at end of file +## 関連項目 + [イベントのログ記録](../../../../../docs/framework/wcf/diagnostics/event-logging/index.md) + [イベントの一般的なリファレンス](../../../../../docs/framework/wcf/diagnostics/event-logging/events-general-reference.md) diff --git a/docs/framework/wcf/diagnostics/event-logging/wmiputinstancefailed.md b/docs/framework/wcf/diagnostics/event-logging/wmiputinstancefailed.md index 13258fb8cfd..5bf4cea649a 100644 --- a/docs/framework/wcf/diagnostics/event-logging/wmiputinstancefailed.md +++ b/docs/framework/wcf/diagnostics/event-logging/wmiputinstancefailed.md @@ -1,31 +1,34 @@ ---- -title: "WmiPutInstanceFailed | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: WmiPutInstanceFailed +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 1e56f6db-c6f6-4e57-9668-3ca79c3750af -caps.latest.revision: 6 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 6 ---- -# WmiPutInstanceFailed -ID : 121 +caps.latest.revision: "6" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 390fb7de2fe5765212934839b830e79d5e85b805 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# WmiPutInstanceFailed +Id: 121 重大度 : エラー カテゴリ : ServiceModel -## 説明 - このイベントは、WMI PutInstance 要求が処理されなかったことを示します。イベントには、WMI オブジェクト、例外、プロセス名、およびプロセス ID が表示されます。 +## 説明 + このイベントは、WMI PutInstance 要求が処理されなかったことを示します。 イベントには、WMI オブジェクト、例外、プロセス名、およびプロセス ID が表示されます。 -## 参照 - [イベント ログ](../../../../../docs/framework/wcf/diagnostics/event-logging/index.md) - [イベント一覧](../../../../../docs/framework/wcf/diagnostics/event-logging/events-general-reference.md) \ No newline at end of file +## 関連項目 + [イベントのログ記録](../../../../../docs/framework/wcf/diagnostics/event-logging/index.md) + [イベントの一般的なリファレンス](../../../../../docs/framework/wcf/diagnostics/event-logging/events-general-reference.md) diff --git a/docs/framework/wcf/diagnostics/tracing/microsoft-transactions-transactionbridge-registerparticipantfailure.md b/docs/framework/wcf/diagnostics/tracing/microsoft-transactions-transactionbridge-registerparticipantfailure.md index 6666cb42ee0..77eb99c7921 100644 --- a/docs/framework/wcf/diagnostics/tracing/microsoft-transactions-transactionbridge-registerparticipantfailure.md +++ b/docs/framework/wcf/diagnostics/tracing/microsoft-transactions-transactionbridge-registerparticipantfailure.md @@ -1,31 +1,34 @@ ---- -title: "Microsoft.Transactions.TransactionBridge.RegisterParticipantFailure | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: Microsoft.Transactions.TransactionBridge.RegisterParticipantFailure +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 3a4ead79-8550-4037-84e3-fd70ff56e001 -caps.latest.revision: 5 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 5 ---- -# Microsoft.Transactions.TransactionBridge.RegisterParticipantFailure -WS\-AT プロトコル サービスは、制御プロトコルの参加要素の登録に失敗しました。 +caps.latest.revision: "5" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 2e3cbe9443f32ec9752198646e96cc1012d7343c +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# Microsoft.Transactions.TransactionBridge.RegisterParticipantFailure +WS-AT プロトコル サービスは、制御プロトコルの参加要素の登録に失敗しました。 -## 説明 - MSDTC により無効な登録要求が検出された場合にトレースされます。これは、複数の完了登録要求や内部エラーによって発生することがあります。 +## 説明 + MSDTC により無効な登録要求が検出された場合にトレースされます。 これは、複数の完了登録要求や内部エラーによって発生することがあります。 -## トラブルシューティング - 完了を複数回登録しないでください。また、トレース メッセージ内のステータス文字列を調べて、アクション可能な項目が存在するかどうかを確認します。 +## トラブルシューティング + 完了を複数回登録しないでください。 また、トレース メッセージ内のステータス文字列を調べて、アクション可能な項目が存在するかどうかを確認します。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/microsoft-transactions-transactionbridge-registrationcoordinatorfailed.md b/docs/framework/wcf/diagnostics/tracing/microsoft-transactions-transactionbridge-registrationcoordinatorfailed.md index 56d0ff112a9..9d943a37076 100644 --- a/docs/framework/wcf/diagnostics/tracing/microsoft-transactions-transactionbridge-registrationcoordinatorfailed.md +++ b/docs/framework/wcf/diagnostics/tracing/microsoft-transactions-transactionbridge-registrationcoordinatorfailed.md @@ -1,31 +1,34 @@ ---- -title: "Microsoft.Transactions.TransactionBridge.RegistrationCoordinatorFailed | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: Microsoft.Transactions.TransactionBridge.RegistrationCoordinatorFailed +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 96474056-0418-41e4-8c75-bbc0a853eaba -caps.latest.revision: 6 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 6 ---- -# Microsoft.Transactions.TransactionBridge.RegistrationCoordinatorFailed -WS\-AT プロトコル サービスは、Register メッセージをコーディネーターに送信できませんでした。 +caps.latest.revision: "6" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 09f5e127f32b791272dc17c09102af198b3a923c +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# Microsoft.Transactions.TransactionBridge.RegistrationCoordinatorFailed +WS-AT プロトコル サービスは、Register メッセージをコーディネーターに送信できませんでした。 -## 説明 +## 説明 メッセージを送信できないために、ローカルの TransactionManager がその上位の TransactionManager に登録できない場合にトレースされます。 -## トラブルシューティング +## トラブルシューティング トレース メッセージを調べて、メッセージの送信エラーの原因となった例外を確認してください。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/mtt-durableparticipantreplaywhilepreparing.md b/docs/framework/wcf/diagnostics/tracing/mtt-durableparticipantreplaywhilepreparing.md index f8e8c9bb366..9df445bfc5c 100644 --- a/docs/framework/wcf/diagnostics/tracing/mtt-durableparticipantreplaywhilepreparing.md +++ b/docs/framework/wcf/diagnostics/tracing/mtt-durableparticipantreplaywhilepreparing.md @@ -1,31 +1,34 @@ ---- -title: "Microsoft.Transactions.TransactionBridge.DurableParticipantReplayWhilePreparing | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: Microsoft.Transactions.TransactionBridge.DurableParticipantReplayWhilePreparing +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 10ef3876-6f8e-4d4e-8444-f47847b64795 -caps.latest.revision: 5 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 5 ---- -# Microsoft.Transactions.TransactionBridge.DurableParticipantReplayWhilePreparing -WS\-AT プロトコル サービスは、準備メッセージに応答していない永続的な参加要素から、リプレイ メッセージを受信しました。そのため、トランザクションが中止されました。 +caps.latest.revision: "5" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: a00a6a06fd5214f1f65bdb6369839d717078da77 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# Microsoft.Transactions.TransactionBridge.DurableParticipantReplayWhilePreparing +WS-AT プロトコル サービスは、準備メッセージに応答していない永続的な参加要素から、リプレイ メッセージを受信しました。 そのため、トランザクションが中止されました。 -## 説明 - 永続的な参加要素がまだ準備している間にリプレイ メッセージが受信された場合は、トレースされます。これは、この状態に対して無効なメッセージであり、トランザクションは中止されます。 +## 説明 + 永続的な参加要素がまだ準備している間にリプレイ メッセージが受信された場合は、トレースされます。 これは、この状態に対して無効なメッセージであり、トランザクションは中止されます。 -## トラブルシューティング - このエラー メッセージは、永続的な参加要素 \(下位トランザクション マネージャーを含む\) がエラーから回復したが、トランザクション結果が不明であるため、状態を要求していることを示している場合があります。 +## トラブルシューティング + このエラー メッセージは、永続的な参加要素 (下位トランザクション マネージャーを含む) がエラーから回復したが、トランザクション結果が不明であるため、状態を要求していることを示している場合があります。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-connectionpoolcloseexception.md b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-connectionpoolcloseexception.md index 09e07a4f484..907b2c64fe4 100644 --- a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-connectionpoolcloseexception.md +++ b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-connectionpoolcloseexception.md @@ -1,28 +1,31 @@ ---- -title: "System.ServiceModel.Channels.ConnectionPoolCloseException | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: System.ServiceModel.Channels.ConnectionPoolCloseException +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 8358898e-129e-4fac-a6bf-bf3aa4293ae2 -caps.latest.revision: 5 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 5 ---- -# System.ServiceModel.Channels.ConnectionPoolCloseException +caps.latest.revision: "5" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 0ea98388efe14ac0d18a94ec056a441096a4d7c0 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# System.ServiceModel.Channels.ConnectionPoolCloseException この接続プールの接続を閉じている間に例外が発生しました。 -## 説明 - このエラー レベルのトレースは、[!INCLUDE[indigo1](../../../../../includes/indigo1-md.md)] が使用している接続プールのエラーにより、接続プールを閉じている間にエラーが発生したことを示しています。このエラーの原因としては、プールされた接続を閉じることに失敗した、またはプールされた接続で CloseTimeout が設定されていることが考えられます。この例外がスローされると、このプール内でまだ閉じられていない接続はすべて中断され、他のプールにある閉じられていない接続は破棄されます。 +## 説明 + このエラー レベルのトレースは、[!INCLUDE[indigo1](../../../../../includes/indigo1-md.md)] が使用している接続プールのエラーにより、接続プールを閉じている間にエラーが発生したことを示しています。 このエラーの原因としては、プールされた接続を閉じることに失敗した、またはプールされた接続で CloseTimeout が設定されていることが考えられます。 この例外がスローされると、このプール内でまだ閉じられていない接続はすべて中断され、他のプールにある閉じられていない接続は破棄されます。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-msmqstartingapplication.md b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-msmqstartingapplication.md index 8da7a0493dc..40229a5e70b 100644 --- a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-msmqstartingapplication.md +++ b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-msmqstartingapplication.md @@ -1,28 +1,31 @@ ---- -title: "System.ServiceModel.Channels.MsmqStartingApplication | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: System.ServiceModel.Channels.MsmqStartingApplication +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 76e1af87-f5f2-4974-acfa-868b56cfa450 -caps.latest.revision: 4 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 4 ---- -# System.ServiceModel.Channels.MsmqStartingApplication +caps.latest.revision: "4" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 0543c01a76c012b4441ee599eb06b0f3910c281d +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# System.ServiceModel.Channels.MsmqStartingApplication System.ServiceModel.Channels.MsmqStartingApplication -## 説明 +## 説明 MSMQ アクティベーション サービスによってアプリケーションが起動されました。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-peerchannelmessagereceived.md b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-peerchannelmessagereceived.md index 6d89142543a..df47948712f 100644 --- a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-peerchannelmessagereceived.md +++ b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-peerchannelmessagereceived.md @@ -1,28 +1,31 @@ ---- -title: "System.ServiceModel.Channels.PeerChannelMessageReceived | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: System.ServiceModel.Channels.PeerChannelMessageReceived +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: b68cfbbf-27fa-49d4-a2a1-c9f6af4876f2 -caps.latest.revision: 7 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 7 ---- -# System.ServiceModel.Channels.PeerChannelMessageReceived +caps.latest.revision: "7" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: c1e1c046e816fd44570297b58d05c6af20f55e39 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# System.ServiceModel.Channels.PeerChannelMessageReceived 新しい PeerChannel メッセージが受信されました。 -## 説明 +## 説明 このトレースは、新しいメッセージの受信後に行われます。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-pnrpregisteredaddresses.md b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-pnrpregisteredaddresses.md index a4cb425c325..89f748c94b0 100644 --- a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-pnrpregisteredaddresses.md +++ b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-pnrpregisteredaddresses.md @@ -1,28 +1,31 @@ ---- -title: "System.ServiceModel.Channels.PnrpRegisteredAddresses | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: System.ServiceModel.Channels.PnrpRegisteredAddresses +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: b770e042-0555-4668-9b41-e20da092c16a -caps.latest.revision: 6 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 6 ---- -# System.ServiceModel.Channels.PnrpRegisteredAddresses +caps.latest.revision: "6" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 41def429e248fb9b9489138a9a4f45d29bc5a1aa +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# System.ServiceModel.Channels.PnrpRegisteredAddresses PNRP リゾルバーがローカル ノードのアドレスを登録しました。 -## 説明 +## 説明 このトレースは、PNRP サービスがローカル ノードのアドレスを正常に登録すると実行されます。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-sslclientcertmissing.md b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-sslclientcertmissing.md index a61e64f5366..55c37a47028 100644 --- a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-sslclientcertmissing.md +++ b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-channels-sslclientcertmissing.md @@ -1,28 +1,31 @@ ---- -title: "System.ServiceModel.Channels.SslClientCertMissing | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: System.ServiceModel.Channels.SslClientCertMissing +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: d09f5336-c1e6-4b92-a04d-af556546bc69 -caps.latest.revision: 4 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 4 ---- -# System.ServiceModel.Channels.SslClientCertMissing +caps.latest.revision: "4" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: ed6185ab500de9796820f5774e09755c0a3d22d8 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# System.ServiceModel.Channels.SslClientCertMissing System.ServiceModel.Channels.SslClientCertMissing -## 説明 +## 説明 リモートの SSL クライアントは必要な資格情報を提供できませんでした。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-comintegration-comintegrationservicehostcreatedserviceendpoint.md b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-comintegration-comintegrationservicehostcreatedserviceendpoint.md index 9a834d2b430..2ff5f57d9a6 100644 --- a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-comintegration-comintegrationservicehostcreatedserviceendpoint.md +++ b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-comintegration-comintegrationservicehostcreatedserviceendpoint.md @@ -1,32 +1,35 @@ ---- -title: "System.ServiceModel.Channels.MsmqMoveOrDeleteAttemptFailed | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: System.ServiceModel.Channels.MsmqMoveOrDeleteAttemptFailed +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: d75d39da-7502-4a6a-91b9-eaa05b8e24d5 -caps.latest.revision: 6 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 6 ---- -# System.ServiceModel.Channels.MsmqMoveOrDeleteAttemptFailed +caps.latest.revision: "6" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 4cecacdcc9ec1155fbb374bb763f6858da6ccc57 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# System.ServiceModel.Channels.MsmqMoveOrDeleteAttemptFailed メッセージを移動または削除できません。 -## 説明 +## 説明 このトレースは、MSMQ メッセージの移動、削除、または拒否の試行中にエラーが発生したことを示しています。 - MSMQ メッセージは \(NetMsmqBinding または MsmqIntegrationBinding のどちらかを使用する場合に\) [!INCLUDE[indigo1](../../../../../includes/indigo1-md.md)] で使用されます。このトレースは NetMsmqBinding または MsmqIntegrationBinding の `ReceiveErrorHandling` プロパティで選択された値と関係しています。 + MSMQ メッセージは (NetMsmqBinding または MsmqIntegrationBinding のどちらかを使用する場合に) [!INCLUDE[indigo1](../../../../../includes/indigo1-md.md)] で使用されます。このトレースは NetMsmqBinding または MsmqIntegrationBinding の `ReceiveErrorHandling` プロパティで選択された値と関係しています。 - このトレースはシステム全体についてのエラーを示すものではありません。 ただし、選択した有害メッセージの処置に失敗したことを示しています。 メッセージが有害となる場合の詳細、および有害メッセージをサービスで適切に処理するための構成方法については、「[有害メッセージの処理](http://go.microsoft.com/fwlink/?LinkID=99546)」を参照してください。 + このトレースはシステム全体についてのエラーを示すものではありません。 ただし、選択した有害メッセージの処置に失敗したことを示しています。 参照してください[有害メッセージの処理](http://go.microsoft.com/fwlink/?LinkID=99546)ときにメッセージが有害となる適切に処理するサービスを構成する方法の詳細についてはします。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-messagewritten.md b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-messagewritten.md index 4de5f803c7d..359485db38e 100644 --- a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-messagewritten.md +++ b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-messagewritten.md @@ -1,28 +1,31 @@ ---- -title: "System.ServiceModel.MessageWritten | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: System.ServiceModel.MessageWritten +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 5d8ce118-acdc-429c-ac89-34e943267c99 -caps.latest.revision: 4 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 4 ---- -# System.ServiceModel.MessageWritten +caps.latest.revision: "4" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 3d533772f5966160d819817b8dc7583706677e2c +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# System.ServiceModel.MessageWritten System.ServiceModel.MessageWritten -## 説明 +## 説明 メッセージが書き込まれました。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-portsharing-readnettcpconfig.md b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-portsharing-readnettcpconfig.md index 5408cbbe940..9d6ad852af1 100644 --- a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-portsharing-readnettcpconfig.md +++ b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-portsharing-readnettcpconfig.md @@ -1,28 +1,31 @@ ---- -title: "System.ServiceModel.PortSharing.ReadNetTcpConfig | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: System.ServiceModel.PortSharing.ReadNetTcpConfig +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: c0d3350f-9d70-4529-a958-eb56a277e401 -caps.latest.revision: 5 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 5 ---- -# System.ServiceModel.PortSharing.ReadNetTcpConfig +caps.latest.revision: "5" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 7736b00441472277e96760f5db057ac34b884122 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# System.ServiceModel.PortSharing.ReadNetTcpConfig System.ServiceModel.PortSharing.ReadNetTcpConfig -## 説明 - 指定したデータ \(listenBacklog、maxConnectionsPendingDispatch、maxPendingAccepts、receiveTimeout、および teredoEnabled\) を使用して、NetTcpSection の構成データを読み取りました。 +## 説明 + 指定したデータ (listenBacklog、maxConnectionsPendingDispatch、maxPendingAccepts、receiveTimeout、および teredoEnabled) を使用して、NetTcpSection の構成データを読み取りました。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-security-securitysessionabortedfaultsendfailure.md b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-security-securitysessionabortedfaultsendfailure.md index a6657c60af2..c7a9a6d2be3 100644 --- a/docs/framework/wcf/diagnostics/tracing/system-servicemodel-security-securitysessionabortedfaultsendfailure.md +++ b/docs/framework/wcf/diagnostics/tracing/system-servicemodel-security-securitysessionabortedfaultsendfailure.md @@ -1,28 +1,31 @@ ---- -title: "System.ServiceModel.Security.SecuritySessionAbortedFaultSendFailure | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: System.ServiceModel.Security.SecuritySessionAbortedFaultSendFailure +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 7dc1a319-0978-46ed-b2ef-1de2317e7e2d -caps.latest.revision: 5 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 5 ---- -# System.ServiceModel.Security.SecuritySessionAbortedFaultSendFailure +caps.latest.revision: "5" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: befb15a97dee3ac2f420e5b7a7592e252c8966d2 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# System.ServiceModel.Security.SecuritySessionAbortedFaultSendFailure System.ServiceModel.Security.SecuritySessionAbortedFaultSendFailure -## 説明 +## 説明 セキュリティ セッション中止エラーをクライアントに送信しているときにエラーが発生しました。 -## 参照 - [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) - [トレースを使用したアプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) - [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) \ No newline at end of file +## 関連項目 + [トレース](../../../../../docs/framework/wcf/diagnostics/tracing/index.md) + [トレースを使用して、アプリケーションのトラブルシューティング](../../../../../docs/framework/wcf/diagnostics/tracing/using-tracing-to-troubleshoot-your-application.md) + [管理と診断](../../../../../docs/framework/wcf/diagnostics/index.md) diff --git a/docs/framework/wcf/diagnostics/wmi/getoperationcounterinstancename.md b/docs/framework/wcf/diagnostics/wmi/getoperationcounterinstancename.md index 1ee6170991b..6e4ca9f90c0 100644 --- a/docs/framework/wcf/diagnostics/wmi/getoperationcounterinstancename.md +++ b/docs/framework/wcf/diagnostics/wmi/getoperationcounterinstancename.md @@ -1,25 +1,28 @@ ---- -title: "GetOperationCounterInstanceName | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: GetOperationCounterInstanceName +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: ac42e20f-63c1-4bdb-8660-736980936811 -caps.latest.revision: 8 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 8 ---- -# GetOperationCounterInstanceName +caps.latest.revision: "8" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 51c7ea2f4483601d39389465107e0295f66dc9df +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# GetOperationCounterInstanceName 操作パフォーマンス カウンターのインスタンスの名前を取得します。 -## 構文 +## 構文 ``` string GetOperationCounterInstanceName( @@ -27,13 +30,13 @@ string GetOperationCounterInstanceName( ); ``` -## パラメーター +## パラメーター -### Operation - \[in\] string +### 操作 + [in] string -## 必要条件 +## 要件 -|MOF|Servicemodel.mof で宣言| -|---------|--------------------------| -|名前空間|root\\ServiceModel で定義| \ No newline at end of file +|MOF|Servicemodel.mof にて宣言済み。| +|---------|-----------------------------------| +|Namespace|root\ServiceModel で定義| diff --git a/docs/framework/wcf/diagnostics/wmi/transportsecuritybindingelement.md b/docs/framework/wcf/diagnostics/wmi/transportsecuritybindingelement.md index 819ecc00ade..c777de2f78e 100644 --- a/docs/framework/wcf/diagnostics/wmi/transportsecuritybindingelement.md +++ b/docs/framework/wcf/diagnostics/wmi/transportsecuritybindingelement.md @@ -1,25 +1,28 @@ ---- -title: "TransportSecurityBindingElement | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: TransportSecurityBindingElement +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 31b8cd3b-3be5-4b6c-93f0-69d7aaf791d0 -caps.latest.revision: 7 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 7 ---- -# TransportSecurityBindingElement +caps.latest.revision: "7" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: 24d97d1659452a68e6d2107a756a2976419d79ea +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# TransportSecurityBindingElement TransportSecurityBindingElement -## 構文 +## 構文 ``` class TransportSecurityBindingElement : SecurityBindingElement @@ -27,14 +30,14 @@ class TransportSecurityBindingElement : SecurityBindingElement }; ``` -## メソッド +## メソッド TransportSecurityBindingElement クラスは、SecurityBindingElement を継承しますが、追加のメソッドやプロパティを定義しません。 -## 要件 +## 要件 -|MOF|Servicemodel.mof で定義| -|---------|--------------------------| -|Namespace|root\\ServiceModel で定義| +|MOF|Servicemodel.mof にて宣言済み。| +|---------|-----------------------------------| +|Namespace|root\ServiceModel で定義| -## 参照 - \ No newline at end of file +## 関連項目 + diff --git a/docs/framework/wcf/extending/extending-the-metadata-system.md b/docs/framework/wcf/extending/extending-the-metadata-system.md index 79c45247b64..e0ac52d3ae4 100644 --- a/docs/framework/wcf/extending/extending-the-metadata-system.md +++ b/docs/framework/wcf/extending/extending-the-metadata-system.md @@ -1,32 +1,34 @@ ---- -title: "メタデータ システムの拡張 | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "メタデータの拡張 [WCF]" +--- +title: "メタデータ システムの拡張" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +helpviewer_keywords: extending metadata [WCF] ms.assetid: 8c6b3b00-61b8-4589-8fa5-546cc33719bf -caps.latest.revision: 8 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 8 ---- -# メタデータ システムの拡張 -[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] のメタデータ システムは複数のクラスのグループおよびインターフェイスで、サービス ベースのアプリケーションを実装するために必要なメタデータを表します。クラスを変更または拡張するか、WSDL \(Web サービス記述言語\) の拡張子やカスタム WS\-PolicyAttachments アサーションなどのカスタム メタデータをエクスポート\/インポートするインターフェイスを実装して構成します。 +caps.latest.revision: "8" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: cab59f5ddebdcc1e50921d5540d411e32b562341 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# メタデータ システムの拡張 +[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] のメタデータ システムは複数のクラスのグループおよびインターフェイスで、サービス ベースのアプリケーションを実装するために必要なメタデータを表します。 クラスを変更または拡張するか、WSDL (Web サービス記述言語) の拡張子やカスタム WS-PolicyAttachments アサーションなどのカスタム メタデータをエクスポート/インポートするインターフェイスを実装して構成します。 -## このセクションの内容 +## このセクションの内容 [WCF 拡張に対するカスタム メタデータのエクスポート](../../../../docs/framework/wcf/extending/exporting-custom-metadata-for-a-wcf-extension.md) - インターフェイスを実装および使用して、カスタム ポリシー アサーションを WSDL ドキュメントに埋め込む方法を説明します。 + インターフェイスを実装および使用して、カスタム ポリシー アサーションを WSDL ドキュメントに埋め込む方法を説明します。 [WCF 拡張に対するカスタム メタデータのインポート](../../../../docs/framework/wcf/extending/importing-custom-metadata-for-a-wcf-extension.md) - インターフェイスを実装および使用して、WSDL ドキュメント内のカスタム ポリシー アサーションの読み取りや応答を行う方法を説明します。 + インターフェイスを実装および使用して、WSDL ドキュメント内のカスタム ポリシー アサーションの読み取りや応答を行う方法を説明します。 - [カスタム バインディングを介したメタデータの公開と取得](../../../../docs/framework/wcf/extending/publishing-and-retrieving-metadata-over-a-custom-binding.md) - カスタム バインディングを介してメタデータを交換する方法について説明します。 \ No newline at end of file + [公開およびカスタム バインディングを介したメタデータの取得](../../../../docs/framework/wcf/extending/publishing-and-retrieving-metadata-over-a-custom-binding.md) + カスタム バインドを介してメタデータを交換する方法について説明します。 diff --git a/docs/framework/wcf/extending/how-to-create-a-custom-authorization-manager-for-a-service.md b/docs/framework/wcf/extending/how-to-create-a-custom-authorization-manager-for-a-service.md index f8bb311f604..d262f406127 100644 --- a/docs/framework/wcf/extending/how-to-create-a-custom-authorization-manager-for-a-service.md +++ b/docs/framework/wcf/extending/how-to-create-a-custom-authorization-manager-for-a-service.md @@ -1,28 +1,34 @@ ---- -title: "方法 : サービスで使用するカスタム承認マネージャーを作成する | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "OperationRequirement クラス" - - "Windows Communication Foundation, 拡張" +--- +title: "方法 : サービスで使用するカスタム承認マネージャーを作成する" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb +helpviewer_keywords: +- Windows Communication Foundation, extending +- OperationRequirement class ms.assetid: 6214afde-44c1-4bf5-ba07-5ad6493620ea -caps.latest.revision: 15 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 15 ---- -# 方法 : サービスで使用するカスタム承認マネージャーを作成する -[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] 内の識別モデル インフラストラクチャでは、拡張性のあるクレーム ベースの承認モデルがサポートされます。クレームはトークンから抽出され、状況に応じてカスタム承認ポリシーによって処理されてから、 に格納されます。承認マネージャーは、 内のクレームを検査して承認に関する決定を行います。 - - 既定では、承認に関する決定は、 クラスによって行われますが、カスタム承認マネージャーを作成することによってオーバーライドできます。カスタム承認マネージャーを作成するには、 から派生するクラスを作成し、 メソッドを実装します。承認に関する決定は、 メソッド内で行われます。このメソッドは、アクセスが許可されている場合は `true` を返し、拒否されている場合は `false` を返します。 +caps.latest.revision: "15" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 7b8d934509940bf712ccb7463156c88540027407 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# 方法 : サービスで使用するカスタム承認マネージャーを作成する +[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] 内の識別モデル インフラストラクチャでは、拡張性のあるクレーム ベースの承認モデルがサポートされます。 クレームはトークンから抽出され、状況に応じてカスタム承認ポリシーによって処理されてから、 に格納されます。 承認マネージャーは、 内のクレームを検査して承認に関する決定を行います。 + + 既定では、承認に関する決定は、 クラスによって行われますが、カスタム承認マネージャーを作成することによってオーバーライドできます。 カスタム承認マネージャーを作成するには、 から派生するクラスを作成し、 メソッドを実装します。 承認に関する決定は、 メソッド内で行われます。このメソッドは、アクセスが許可されている場合は `true` を返し、拒否されている場合は `false` を返します。 承認決定がメッセージ本文の内容に依存する場合は、 メソッドを使用します。 @@ -30,23 +36,23 @@ caps.handback.revision: 15 サービスのカスタム承認マネージャーは、コードまたは構成に登録できます。 -### カスタム承認マネージャーを作成するには +### カスタム承認マネージャーを作成するには 1. クラスからクラスを派生させます。 - [!code-csharp[c_CustomAuthMgr#5](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_customauthmgr/cs/c_customauthmgr.cs#5)] + [!code-csharp[c_CustomAuthMgr#5](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_customauthmgr/cs/c_customauthmgr.cs#5)] [!code-vb[c_CustomAuthMgr#5](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_customauthmgr/vb/c_customauthmgr.vb#5)] 2. メソッドをオーバーライドします。 - メソッドに渡される を使用して、承認に関する決定を行います。 + メソッドに渡される を使用して、承認に関する決定を行います。 承認に関する決定を行うために、 メソッドを使用してカスタム クレーム `http://www.contoso.com/claims/allowedoperation` を検索する方法を次のコード例に示します。 - [!code-csharp[c_CustomAuthMgr#6](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_customauthmgr/cs/c_customauthmgr.cs#6)] + [!code-csharp[c_CustomAuthMgr#6](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_customauthmgr/cs/c_customauthmgr.cs#6)] [!code-vb[c_CustomAuthMgr#6](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_customauthmgr/vb/c_customauthmgr.vb#6)] -### コードを使用してカスタム承認マネージャーを登録するには +### コードを使用してカスタム承認マネージャーを登録するには 1. カスタム承認マネージャーのインスタンスを作成し、これを プロパティに割り当てます。 @@ -54,28 +60,28 @@ caps.handback.revision: 15 `MyServiceAuthorizationManager` カスタム承認マネージャーを登録するコード例を次に示します。 - [!code-csharp[c_CustomAuthMgr#4](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_customauthmgr/cs/c_customauthmgr.cs#4)] + [!code-csharp[c_CustomAuthMgr#4](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_customauthmgr/cs/c_customauthmgr.cs#4)] [!code-vb[c_CustomAuthMgr#4](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_customauthmgr/vb/c_customauthmgr.vb#4)] -### 構成を使用してカスタム承認マネージャーを登録するには +### 構成を使用してカスタム承認マネージャーを登録するには 1. サービスの構成ファイルを開きます。 -2. [\](../../../../docs/framework/configure-apps/file-schema/wcf/behaviors.md)に [\](../../../../docs/framework/configure-apps/file-schema/wcf/serviceauthorization-element.md)を追加します。 +2. 追加、 [ \](../../../../docs/framework/configure-apps/file-schema/wcf/serviceauthorization-element.md)を[\<動作 >](../../../../docs/framework/configure-apps/file-schema/wcf/behaviors.md)です。 - [\](../../../../docs/framework/configure-apps/file-schema/wcf/serviceauthorization-element.md)に `serviceAuthorizationManagerType` 属性を追加し、この属性の値をカスタム承認マネージャーを表す型に設定します。 + [ \](../../../../docs/framework/configure-apps/file-schema/wcf/serviceauthorization-element.md)、追加、`serviceAuthorizationManagerType`属性し、その値をカスタム承認マネージャーを表す型に設定します。 3. クライアントとサービスの間の通信をセキュリティで保護するバインディングを追加します。 - この通信用に選択されたバインディングによって、 に追加されるクレームが決まります。これは、カスタム承認マネージャーが承認に関する決定を行うために使用します。システム指定のバインディングの詳細については、「[システム標準のバインディング](../../../../docs/framework/wcf/system-provided-bindings.md)」を参照してください。 + この通信用に選択されたバインディングによって、 に追加されるクレームが決まります。これは、カスタム承認マネージャーが承認に関する決定を行うために使用します。 システム指定のバインディングの詳細については、次を参照してください。[システム指定のバインディング](../../../../docs/framework/wcf/system-provided-bindings.md)です。 -4. [\](../../../../docs/framework/configure-apps/file-schema/wcf/service.md) 要素を追加し、`behaviorConfiguration` 属性の値を [\](../../../../docs/framework/configure-apps/file-schema/wcf/behavior-of-servicebehaviors.md) 要素の名前属性の値に設定して、サービス エンドポイントに動作を関連付けます。 +4. 追加することで、サービス エンドポイントの動作を関連付ける、 [\<サービス >](../../../../docs/framework/configure-apps/file-schema/wcf/service.md)要素の値を設定し、`behaviorConfiguration`属性の名前属性の値を[\<動作>](../../../../docs/framework/configure-apps/file-schema/wcf/behavior-of-servicebehaviors.md)要素。 - サービス エンドポイントの構成の詳細については、「[方法 : 構成にサービス エンドポイントを作成する](../../../../docs/framework/wcf/feature-details/how-to-create-a-service-endpoint-in-configuration.md)」を参照してください。 + サービス エンドポイントの構成の詳細については、次を参照してください。[する方法: 構成でサービス エンドポイントの作成](../../../../docs/framework/wcf/feature-details/how-to-create-a-service-endpoint-in-configuration.md)です。 カスタム承認マネージャー `Samples.MyServiceAuthorizationManager` を登録するコード例を次に示します。 - ``` + ```xml @@ -113,15 +119,15 @@ caps.handback.revision: 15 ``` > [!WARNING] - > serviceAuthorizationManagerType を指定する場合、文字列には、完全修飾型名、コンマ、型が定義されているアセンブリの名前が含まれている必要があります。アセンブリ名を省略した場合、WCF は、System.ServiceModel.dll から型を読み込もうとします。 + > serviceAuthorizationManagerType を指定する場合、文字列には、完全修飾型名、 コンマ、型が定義されているアセンブリの名前が含まれている必要があります。 アセンブリ名を省略した場合、WCF は、System.ServiceModel.dll から型を読み込もうとします。 -## 使用例 - メソッドのオーバーライドを含む クラスの基本実装を次のコード例に示します。このコード例は、 のカスタム クレームを調べ、そのカスタム クレームのリソースが のアクション値と一致した場合に `true` を返します。 クラスのより完全な実装については、「[承認ポリシー](../../../../docs/framework/wcf/samples/authorization-policy.md)」を参照してください。 +## 例 + メソッドのオーバーライドを含む クラスの基本実装を次のコード例に示します。 このコード例は、 のカスタム クレームを調べ、そのカスタム クレームのリソースが `true` のアクション値と一致した場合に を返します。 より完全な実装については、クラスを参照してください[承認ポリシー](../../../../docs/framework/wcf/samples/authorization-policy.md)です。 - [!code-csharp[c_CustomAuthMgr#2](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_customauthmgr/cs/c_customauthmgr.cs#2)] + [!code-csharp[c_CustomAuthMgr#2](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_customauthmgr/cs/c_customauthmgr.cs#2)] [!code-vb[c_CustomAuthMgr#2](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_customauthmgr/vb/c_customauthmgr.vb#2)] -## 参照 - - [承認ポリシー](../../../../docs/framework/wcf/samples/authorization-policy.md) - [承認ポリシー](../../../../docs/framework/wcf/samples/authorization-policy.md) \ No newline at end of file +## 関連項目 + + [承認ポリシー](../../../../docs/framework/wcf/samples/authorization-policy.md) + [承認ポリシー](../../../../docs/framework/wcf/samples/authorization-policy.md) diff --git a/docs/framework/wcf/feature-details/client-architecture.md b/docs/framework/wcf/feature-details/client-architecture.md index 82c46de538f..0cd12a25566 100644 --- a/docs/framework/wcf/feature-details/client-architecture.md +++ b/docs/framework/wcf/feature-details/client-architecture.md @@ -1,69 +1,72 @@ ---- -title: "クライアント アーキテクチャ | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "クライアント アーキテクチャ" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 02624403-0d77-41cb-9a86-ab55e98c7966 -caps.latest.revision: 7 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 7 ---- -# クライアント アーキテクチャ -アプリケーションは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] クライアント オブジェクトを使用してサービス操作を呼び出します。このトピックでは、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクト、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント チャネル、およびこれらとその基になるチャネル アーキテクチャのリレーションシップについて説明します。[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクトの概要については、「[WCF クライアントの概要](../../../../docs/framework/wcf/wcf-client-overview.md)」を参照してください。チャネル レイヤー[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[チャネル レイヤーの拡張](../../../../docs/framework/wcf/extending/extending-the-channel-layer.md)」を参照してください。 - -## 概要 +caps.latest.revision: "7" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: acd2263fddf4b045cd7efc93ca85d1ed1b2e6dd0 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# クライアント アーキテクチャ +アプリケーションは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] クライアント オブジェクトを使用してサービス操作を呼び出します。 このトピックでは、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクト、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント チャネル、およびこれらとその基になるチャネル アーキテクチャのリレーションシップについて説明します。 基本的な概要について[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)]クライアント オブジェクトを参照してください[WCF クライアントの概要](../../../../docs/framework/wcf/wcf-client-overview.md)です。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]チャネル レイヤを参照してください[、チャネル レイヤの拡張](../../../../docs/framework/wcf/extending/extending-the-channel-layer.md)です。 + +## 概要 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアントはサービス モデル ランタイムによって作成されます。クライアントは次の要素から構成されます。 - 自動的に生成される、サービス コントラクトのクライアント実装。これは、アプリケーション コードからの呼び出しを送信メッセージに変換すると共に、応答メッセージを出力パラメーターに変換して、アプリケーションが取得できる値を返します。 -- コントロール インターフェイス \(\) の実装。これは、さまざまなインターフェイスをグループ化し、コントロールの機能 \(特に、クライアント セッションの終了機能とチャネルの破棄機能\) へのアクセスを提供します。 +- コントロール インターフェイス () の実装。これは、さまざまなインターフェイスをグループ化し、コントロールの機能 (特に、クライアント セッションの終了機能とチャネルの破棄機能) へのアクセスを提供します。 - クライアント チャネル。これは、使用するバインディングによって指定される構成設定に基づいて構築されます。 - アプリケーションでは、 を使用するか、[ServiceModel メタデータ ユーティリティ ツール \(Svcutil.exe\)](../../../../docs/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe.md) で生成された 派生クラスのインスタンスを作成することによって、必要に応じて、このようなクライアントを作成できます。これらの作成済みのクライアント クラスは、 によって動的に構築されるクライアント チャネル実装にカプセル化され、処理が代行されます。したがって、クライアント チャネルと、クライアント チャネルを生成するチャネル ファクトリが、このトピックの説明の中心となります。 + アプリケーションは、このようなクライアントを作成するオンデマンドで使用するか、またはのインスタンスを作成することで、によって生成されるクラスを派生、 [ServiceModel メタデータ ユーティリティ ツール (Svcutil.exe)](../../../../docs/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe.md)です。 これらの作成済みのクライアント クラスは、 によって動的に構築されるクライアント チャネル実装にカプセル化され、処理が代行されます。 したがって、クライアント チャネルと、クライアント チャネルを生成するチャネル ファクトリが、このトピックの説明の中心となります。 -## クライアント オブジェクトとクライアント チャネル - [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアントの基本インターフェイスは、 インターフェイスです。これは、中核となるクライアント機能だけでなく、 の基本的な通信オブジェクト機能、 のコンテキスト機能、および の拡張可能な動作を公開します。 +## クライアント オブジェクトとクライアント チャネル + [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアントの基本インターフェイスは、 インターフェイスです。これは、中核となるクライアント機能だけでなく、 の基本的な通信オブジェクト機能、 のコンテキスト機能、および の拡張可能な動作を公開します。 - ただし、 インターフェイスではサービス コントラクトそのものは定義しません。サービス コントラクトは \(通常、[ServiceModel メタデータ ユーティリティ ツール \(Svcutil.exe\)](../../../../docs/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe.md) などのツールを使用してサービス メタデータから生成される\) サービス コントラクト インターフェイスによって宣言されます。[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント型は、 とターゲットのサービス コントラクト インターフェイスの両方を拡張したもので、アプリケーションから直接操作を呼び出したり、クライアント側のランタイム機能にアクセスしたりできるようにします。[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアントを作成することにより、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] オブジェクトには、構成済みサービス エンドポイントに接続して対話できるランタイムの作成に必要な情報が提供されます。 + ただし、 インターフェイスではサービス コントラクトそのものは定義しません。 サービス コントラクト インターフェイスで宣言されている (通常のようなツールを使用してサービス メタデータから生成、 [ServiceModel メタデータ ユーティリティ ツール (Svcutil.exe)](../../../../docs/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe.md))。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント型は、 とターゲットのサービス コントラクト インターフェイスの両方を拡張したもので、アプリケーションから直接操作を呼び出したり、クライアント側のランタイム機能にアクセスしたりできるようにします。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアントを作成することにより、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] オブジェクトには、構成済みサービス エンドポイントに接続して対話できるランタイムの作成に必要な情報が提供されます。 - 上述のとおり、この 2 つの [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント型は、使用する前に構成する必要があります。最も単純な [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント型は、 \(または、サービス コントラクトが双方向コントラクトである場合は、\) から派生するオブジェクトです。これらのクライアント型はコンストラクターを使用して作成し、プログラムで構成するか、または構成ファイルを使用して構成します。また、サービス操作を呼び出すために直接呼び出されます。 オブジェクトの概要については、「[WCF クライアントの概要](../../../../docs/framework/wcf/wcf-client-overview.md)」を参照してください。 + 上述のとおり、この 2 つの [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント型は、使用する前に構成する必要があります。 最も単純な [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント型は、 (または、サービス コントラクトが双方向コントラクトである場合は、) から派生するオブジェクトです。 これらのクライアント型はコンストラクターを使用して作成し、プログラムで構成するか、または構成ファイルを使用して構成します。また、サービス操作を呼び出すために直接呼び出されます。 基本的な概要について、オブジェクトを参照してください[WCF クライアントの概要](../../../../docs/framework/wcf/wcf-client-overview.md)です。 - 2 番目のクライアント型は、実行時に メソッドへの呼び出しから生成されます。通常、通信の詳細を厳密に制御する必要があるアプリケーションでは、*クライアント チャネル オブジェクト*と呼ばれる、このクライアント型を使用します。このクライアント型を使用することにより、基になるクライアント ランタイムやチャネル システムに比べ、より直接的な対話が可能になるためです。 + 2 番目のクライアント型は、実行時に メソッドへの呼び出しから生成されます。 通常、通信の詳細厳重に関係していてアプリケーションと呼ばれるこのクライアントの種類を使用して、*クライアント チャネル オブジェクト*、基になるクライアント ランタイムやチャネルより直接的な対話を可能にします。システムです。 -## チャネル ファクトリ - クライアント呼び出しをサポートする、基になるランタイムを作成するクラスは、 クラスです。[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクトも [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント チャネル オブジェクトも、 オブジェクトを使用してインスタンスを作成します。 派生クライアント オブジェクトはチャネル ファクトリの処理をカプセル化しますが、さまざまなシナリオを想定した場合、チャネル ファクトリを直接使用することをお勧めします。よくあるシナリオとしては、既存のファクトリから新しいクライアント チャネルを繰り返し作成する必要がある場合です。クライアント オブジェクトを使用している場合は、 プロパティを呼び出して、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクトから、基になるチャネル ファクトリを取得できます。 +## チャネル ファクトリ + クライアント呼び出しをサポートする、基になるランタイムを作成するクラスは、 クラスです。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクトも [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント チャネル オブジェクトも、 オブジェクトを使用してインスタンスを作成します。 派生クライアント オブジェクトはチャネル ファクトリの処理をカプセル化しますが、さまざまなシナリオを想定した場合、チャネル ファクトリを直接使用することをお勧めします。 よくあるシナリオとしては、既存のファクトリから新しいクライアント チャネルを繰り返し作成する必要がある場合です。 クライアント オブジェクトを使用している場合は、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] プロパティを呼び出して、 クライアント オブジェクトから、基になるチャネル ファクトリを取得できます。 - チャネル ファクトリに関して覚えておく必要のある重要なことは、これらのファクトリが、 を呼び出す前に、指定されている構成のクライアント チャネルの新しいインスタンスを作成するという点です。いったん \(または 、または [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクトに対する任意の操作\) を呼び出した場合、ターゲットのエンドポイント アドレスを変更するだけでは、チャネル ファクトリを変更したり、別のサービス インスタンスへのチャネルを取得したりすることはできません。異なる構成でクライアント オブジェクトやクライアント チャネルを作成するには、まず新しいチャネル ファクトリを作成する必要があります。 + チャネル ファクトリに関して覚えておく必要のある重要なことは、これらのファクトリが、 を呼び出す前に、指定されている構成のクライアント チャネルの新しいインスタンスを作成するという点です。 いったん (または 、または [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクトに対する任意の操作) を呼び出した場合、ターゲットのエンドポイント アドレスを変更するだけでは、チャネル ファクトリを変更したり、別のサービス インスタンスへのチャネルを取得したりすることはできません。 異なる構成でクライアント オブジェクトやクライアント チャネルを作成するには、まず新しいチャネル ファクトリを作成する必要があります。 - [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクトと [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント チャネルを使用する際のさまざまな問題[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[WCF クライアントを使用したサービスへのアクセス](../../../../docs/framework/wcf/feature-details/accessing-services-using-a-client.md)」を参照してください。 + [!INCLUDE[crabout](../../../../includes/crabout-md.md)]使用してさまざまな問題[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)]クライアント オブジェクトと[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)]クライアント チャネルを参照してください[にアクセスするサービスの WCF クライアントを使用して](../../../../docs/framework/wcf/feature-details/accessing-services-using-a-client.md)です。 次の 2 つのセクションでは、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント チャネル オブジェクトの作成と使用について説明します。 -#### 新しい WCF クライアント チャネル オブジェクトの作成 +#### 新しい WCF クライアント チャネル オブジェクトの作成 次のサービス コントラクトが生成されていることを前提に、クライアント チャネルの使用方法を説明します。 [!code-csharp[C_GeneratedCodeFiles#12](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_generatedcodefiles/cs/proxycode.cs#12)] - `ISampleService` サービスに接続するには、チャネル ファクトリ \(\) を直接使用して生成したコントラクト インターフェイスを使用します。特定のコントラクトのチャネル ファクトリを作成して構成した後は、 メソッドを呼び出して、`ISampleService` サービスとの通信に使用できるクライアント チャネル オブジェクトを返すことができます。 + `ISampleService` サービスに接続するには、チャネル ファクトリ () を直接使用して生成したコントラクト インターフェイスを使用します。 特定のコントラクトのチャネル ファクトリを作成して構成した後は、 メソッドを呼び出して、`ISampleService` サービスとの通信に使用できるクライアント チャネル オブジェクトを返すことができます。 - サービス コントラクト インターフェイスで クラスを使用する場合は、 インターフェイスにキャストして、明示的にチャネルを開いたり、閉じたり、中止したりする必要があります。処理を容易にするために、Svcutil.exe ツールでは、サービス コントラクト インターフェイスと の両方を実装するヘルパー インターフェイスも生成されます。これにより、キャストを行わずにクライアント チャネル インフラストラクチャとのやりとりを実現できます。上記のサービス コントラクトを実装するヘルパー クライアント チャネルの定義を、次のコード例に示します。 + サービス コントラクト インターフェイスで クラスを使用する場合、明示的にチャネルを開いたり、閉じたり、中止したりするには、 インターフェイスにキャストする必要があります。 処理を容易にするために、Svcutil.exe ツールでは、サービス コントラクト インターフェイスと の両方を実装するヘルパー インターフェイスも生成されます。これにより、キャストを行わずにクライアント チャネル インフラストラクチャとのやりとりを実現できます。 上記のサービス コントラクトを実装するヘルパー クライアント チャネルの定義を、次のコード例に示します。 [!code-csharp[C_GeneratedCodeFiles#13](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_generatedcodefiles/cs/proxycode.cs#13)] -#### 新しい WCF クライアント チャネル オブジェクトの作成 - クライアント チャネルを使用して `ISampleService` サービスに接続するには、チャネル ファクトリを直接使用して生成したコントラクト インターフェイス \(またはヘルパー バージョン\) を使用して、コントラクト インターフェイスの型を型パラメーターとして渡します。特定のコントラクトのチャネル ファクトリを作成して構成したら、 メソッドを呼び出して、`ISampleService` サービスとの通信に使用できるクライアント チャネル オブジェクトを返すことができます。 +#### 新しい WCF クライアント チャネル オブジェクトの作成 + クライアント チャネルを使用して `ISampleService` サービスに接続するには、チャネル ファクトリを直接使用して生成したコントラクト インターフェイス (またはヘルパー バージョン) を使用して、コントラクト インターフェイスの型を型パラメーターとして渡します。 特定のコントラクトのチャネル ファクトリを作成して構成したら、 メソッドを呼び出して、`ISampleService` サービスとの通信に使用できるクライアント チャネル オブジェクトを返すことができます。 - 作成したクライアント チャネル オブジェクトで とコントラクト インターフェイスを実装します。その結果、これらを使用して、このコントラクトをサポートするサービスと対話する操作を直接呼び出すことができます。 + 作成したクライアント チャネル オブジェクトで とコントラクト インターフェイスを実装します。 その結果、これらを使用して、このコントラクトをサポートするサービスと対話する操作を直接呼び出すことができます。 - クライアント オブジェクトを使用するかクライアント チャネル オブジェクトを使用するかは、開発者がきめ細かな制御を優先するか容易さを優先するかの違いだけです。クラスやオブジェクトの処理に慣れている多くの開発者の場合、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント チャネルではなく [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクトを選択することも考えられます。 + クライアント オブジェクトを使用するかクライアント チャネル オブジェクトを使用するかは、開発者がきめ細かな制御を優先するか容易さを優先するかの違いだけです。 クラスやオブジェクトの処理に慣れている多くの開発者の場合、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント チャネルではなく [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアント オブジェクトを選択することも考えられます。 - 例については、「[方法 : ChannelFactory を使用する](../../../../docs/framework/wcf/feature-details/how-to-use-the-channelfactory.md)」を参照してください。 \ No newline at end of file + 例については、次を参照してください。[する方法: ChannelFactory を使用して](../../../../docs/framework/wcf/feature-details/how-to-use-the-channelfactory.md)です。 diff --git a/docs/framework/wcf/feature-details/configuring-serialization-in-a-workflow-service.md b/docs/framework/wcf/feature-details/configuring-serialization-in-a-workflow-service.md index 1558da241b3..368a2b2d426 100644 --- a/docs/framework/wcf/feature-details/configuring-serialization-in-a-workflow-service.md +++ b/docs/framework/wcf/feature-details/configuring-serialization-in-a-workflow-service.md @@ -1,23 +1,26 @@ ---- -title: "ワークフロー サービス内でのシリアル化の構成 | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "ワークフロー サービス内でのシリアル化の構成" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: aa70b290-a2ee-4c3c-90ea-d0a7665096ae -caps.latest.revision: 4 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 4 ---- -# ワークフロー サービス内でのシリアル化の構成 -ワークフロー サービスは [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] サービスであるため、 \(既定\) または を使用するオプションがあります。ワークフロー以外のサービスを記述する場合、使用するシリアライザーの型はサービスまたは操作コントラクトで指定されます。[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] ワークフロー サービスを作成する場合、これらのコントラクトはコードで指定せずに、コントラクト推論で実行時に生成されます。コントラクト推論[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[ワークフロー内でのコントラクトの使用](../../../../docs/framework/wcf/feature-details/using-contracts-in-workflow.md)」を参照してください。シリアライザーは、 プロパティを使用して指定されます。これは、次の図に示すようにデザイナーで設定できます。 +caps.latest.revision: "4" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 9aa50b8e9f29e5dd14f0ff18d253943a73ef3a0b +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# ワークフロー サービス内でのシリアル化の構成 +ワークフロー サービスは [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] サービスであるため、 (既定) または を使用するオプションがあります。 ワークフロー以外のサービスを記述する場合、使用するシリアライザーの型はサービスまたは操作コントラクトで指定されます。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] ワークフロー サービスを作成する場合、これらのコントラクトはコードで指定せずに、コントラクト推論で実行時に生成されます。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]コントラクトの推論は、「[ワークフロー内のコントラクトの使用](../../../../docs/framework/wcf/feature-details/using-contracts-in-workflow.md)です。 シリアライザーは、 プロパティを使用して指定されます。 これは、次の図に示すようにデザイナーで設定できます。 ![シリアライザーの設定](../../../../docs/framework/wcf/feature-details/media/settingserialzier.png "SettingSerialzier") @@ -32,18 +35,17 @@ Receive approveExpense = new Receive SerializerOption = SerializerOption.DataContractSerializer, Content = ReceiveContent.Create(new OutArgument(expense)) }; - ``` - ワークフロー サービスにも既知の型を指定できます。既知の型[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[既知のデータ コントラクト型](../../../../docs/framework/wcf/feature-details/data-contract-known-types.md)」を参照してください。既知の型は、デザイナーまたはコードで指定できます。デザイナーで既知の型を指定するには、次の図に示すように アクティビティのプロパティ ウィンドウで KnownTypes プロパティの横の省略記号ボタンをクリックします。 + ワークフロー サービスにも既知の型を指定できます。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]既知の型を参照してください[データ コントラクトの既知の型](../../../../docs/framework/wcf/feature-details/data-contract-known-types.md)です。 既知の型は、デザイナーまたはコードで指定できます。 デザイナーで既知の型を指定するには、次の図に示すように アクティビティのプロパティ ウィンドウで KnownTypes プロパティの横の省略記号ボタンをクリックします。 ![KnownTypes プロパティ](../../../../docs/framework/wcf/feature-details/media/knowntypes.png "KnownTypes") これにより、既知の型を検索および指定できる型コレクション エディターが表示されます。 - ![既知の型の追加](../../../../docs/framework/wcf/feature-details/media/typecollectionseditor.gif "TypeCollectionsEditor") + ![既知の型を追加する](../../../../docs/framework/wcf/feature-details/media/typecollectionseditor.gif "TypeCollectionsEditor") - **\[新しい型の追加\]** リンクをクリックし、ドロップダウンを使用して既知の型コレクションに追加する型を選択または検索します。既知の型をコードで指定するには、次の例に示すように プロパティを使用します。 + クリックして、**新しいタイプの追加**リンクし、既知の型のコレクションに追加する型の選択や検索ドロップダウンを使用します。 既知の型をコードで指定するには、次の例に示すように プロパティを使用します。 ``` Receive approveExpense = new Receive @@ -56,7 +58,6 @@ Receive approveExpense = new Receive }; approveExpense.KnownTypes.Add(typeof(Travel)); approveExpense.KnownTypes.Add(typeof(Meal)); - ``` - ワークフロー サービスのシリアル化の構成方法を示す完全なコード例を確認するには、「[ワークフロー サービスでのメッセージの書式設定](../../../../docs/framework/windows-workflow-foundation/samples/formatting-messages-in-workflow-services.md)」を参照してください。 \ No newline at end of file + 完全なコード例をワークフロー サービスのシリアル化を構成する方法を示すを参照してください「[ワークフロー サービス内メッセージを書式設定](../../../../docs/framework/windows-workflow-foundation/samples/formatting-messages-in-workflow-services.md)です。 diff --git a/docs/framework/wcf/feature-details/contracts.md b/docs/framework/wcf/feature-details/contracts.md index f10d6245c96..128eeab60e4 100644 --- a/docs/framework/wcf/feature-details/contracts.md +++ b/docs/framework/wcf/feature-details/contracts.md @@ -1,38 +1,41 @@ ---- -title: "コントラクト | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "コントラクト [WCF]" - - "WCF [WCF], コントラクト" - - "Windows Communication Foundation [WCF], コントラクト" +--- +title: "コントラクト" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +helpviewer_keywords: +- WCF [WCF], contracts +- contracts [WCF] +- Windows Communication Foundation [WCF], contracts ms.assetid: c8364183-4ac1-480b-804a-c5e6c59a5d7d -caps.latest.revision: 7 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 7 ---- -# コントラクト -ここでは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] コントラクトを定義および実装する方法について説明します。 サービス コントラクトでは、エンドポイントが外部と何をやりとりするかが指定されます。 具体的には、要求\/応答、一方向、双方向など、基本的なメッセージ交換パターン \(MEP\) に編成された一連のメッセージに関する記述です。 サービス コントラクトがメッセージ交換の論理的に関連したセットであるとすると、サービス操作は単一のメッセージ交換です。 たとえば、`Hello` という操作では、1 つのメッセージを受け取り、呼び出し元があいさつを通知できるようにする必要があり、メッセージを返すことができます \(マナーが悪ければ返さない場合もあり得ます\)。 - - コントラクトおよび [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] のその他の中心的概念[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[Windows Communication Foundation の基本概念](../../../../docs/framework/wcf/fundamental-concepts.md)」を参照してください。 ここでは、サービス コントラクトを理解することに重点を置きます。 サービス コントラクトを使用してサービスに接続するクライアントを構築する方法[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[WCF クライアントの概要](../../../../docs/framework/wcf/wcf-client-overview.md)」を参照してください。 クライアント チャネル、クライアント アーキテクチャ、およびその他クライアントに関する問題[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[クライアント](../../../../docs/framework/wcf/feature-details/clients.md)」を参照してください。 - -## 概要 - ここでは、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスの設計および実装に関する大まかな概念的位置付けについて説明します。 サブトピックでは、設計と実装の仕様についてより詳しく説明します。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] アプリケーションを設計および実装する前に、次の準備をしておくことをお勧めします。 +caps.latest.revision: "7" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 60835e9d85412aa07958273daa5d9b7a24cfbfeb +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# コントラクト +ここでは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] コントラクトを定義および実装する方法について説明します。 サービス コントラクトでは、エンドポイントが外部と何をやりとりするかが指定されます。 具体的には、要求/応答、一方向、双方向など、基本的なメッセージ交換パターン (MEP) に編成された一連のメッセージに関する記述です。 サービス コントラクトがメッセージ交換の論理的に関連したセットであるとすると、サービス操作は単一のメッセージ交換です。 たとえば、`Hello` という操作では、1 つのメッセージを受け取り、呼び出し元があいさつを通知できるようにする必要があり、メッセージを返すことができます (マナーが悪ければ返さない場合もあり得ます)。 + + [!INCLUDE[crabout](../../../../includes/crabout-md.md)]コントラクトおよびその他のコア[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)]概念を参照してください[基本的な Windows Communication Foundation 概念](../../../../docs/framework/wcf/fundamental-concepts.md)です。 ここでは、サービス コントラクトを理解することに重点を置きます。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]サービスを使用するクライアントを構築する方法は、サービスに接続しを参照してくださいコントラクト[WCF クライアントの概要](../../../../docs/framework/wcf/wcf-client-overview.md)です。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]クライアント チャネル、クライアント アーキテクチャ、およびその他のクライアントの問題を参照してください。[クライアント](../../../../docs/framework/wcf/feature-details/clients.md)です。 + +## 概要 + ここでは、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスの設計および実装に関する大まかな概念的位置付けについて説明します。 サブトピックでは、設計と実装の仕様についてより詳しく説明します。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] アプリケーションを設計および実装する前に、次の準備をしておくことをお勧めします。 - サービス コントラクトの概要、しくみ、および作成方法について理解する。 - コントラクトとは、実行時の構成またはホスト環境でサポートされていない可能性のある最小限の要件を記述するものであることを理解する。 -## サービス コントラクト +## サービス コントラクト サービス コントラクトとは、以下の項目に関する記述です。 - サービスでの操作のグループ化 @@ -45,7 +48,7 @@ caps.handback.revision: 7 - サービスとの正常な通信をサポートするために使用するプロトコルとシリアル化形式 - たとえば、注文情報の種類に関する入力を受け入れ、発注 ID を含めた成功または失敗の情報を返す `CreateOrder` 操作が含まれた発注書コントラクトがあるとします。 このコントラクトには、発注 ID を受け入れ、注文ステータス情報を返す `GetOrderStatus` 操作も含まれている場合があります。 この種のサービス コントラクトの場合、以下を明示します。 + たとえば、注文情報の種類に関する入力を受け入れ、発注 ID を含めた成功または失敗の情報を返す `CreateOrder` 操作が含まれた発注書コントラクトがあるとします。 このコントラクトには、発注 ID を受け入れ、注文ステータス情報を返す `GetOrderStatus` 操作も含まれている場合があります。 この種のサービス コントラクトの場合、以下を明示します。 - 発注書コントラクトが `CreateOrder` 操作と `GetOrderStatus` 操作で構成されていること。 @@ -53,26 +56,26 @@ caps.handback.revision: 7 - これらのメッセージが伝達できるデータ。 -- メッセージを正常に処理するために必要な通信インフラストラクチャに関する明確な記述。 たとえば、正常な通信を確立するためにセキュリティが必要かどうか、また、どのような形式のセキュリティが必要かなどの詳細を記述します。 +- メッセージを正常に処理するために必要な通信インフラストラクチャに関する明確な記述。 たとえば、正常な通信を確立するためにセキュリティが必要かどうか、また、どのような形式のセキュリティが必要かなどの詳細を記述します。 - このような種類の情報を他のさまざまなプラットフォーム上 \(マイクロソフト以外のプラットフォームも含む\) のアプリケーションに伝達するために、XML サービス コントラクトは、[Web Services Description Language \(WSDL\)](http://go.microsoft.com/fwlink/?LinkId=87004) や [XML Schema \(XSD\)](http://go.microsoft.com/fwlink/?LinkId=87005) などの標準 XML 形式で公開されます。 多くのプラットフォームの開発者は、このパブリック コントラクト情報を使用して、サービスと通信できるアプリケーションを作成できます。これは、開発者が仕様の言語を理解しているだけでなく、これらの言語はサービスがサポートするパブリックな形式、書式、およびプロトコルを記述することで相互運用できるように設計されているためです。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] がこの種の情報を処理する方法[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[メタデータ](../../../../docs/framework/wcf/feature-details/metadata.md)」を参照してください。 + このようなその他のプラットフォーム (など、Microsoft 以外のプラットフォーム) 上のアプリケーションに情報を伝えるためには、XML サービス コントラクトが公開されているで表現される、標準の XML 形式など[Web サービス記述言語 (WSDL)](http://go.microsoft.com/fwlink/?LinkId=87004)および[XML スキーマ (XSD)](http://go.microsoft.com/fwlink/?LinkId=87005)、その他。 多くのプラットフォームの開発者は、このパブリック コントラクト情報を使用して、サービスと通信できるアプリケーションを作成できます。これは、開発者が仕様の言語を理解しているだけでなく、これらの言語はサービスがサポートするパブリックな形式、書式、およびプロトコルを記述することで相互運用できるように設計されているためです。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]どの[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)]については、このようなハンドルを参照してください[メタデータ](../../../../docs/framework/wcf/feature-details/metadata.md)です。 - コントラクトはさまざまな方法で表現できます。ただし、WSDL と XSD は、利用しやすい方法でサービスを記述する優れた言語ではあるものの直接使用するのが難しいため、どのような場合でも、サービス コントラクトの実装ではなく、サービスを記述するだけです。 そのため、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] アプリケーションでは、マネージ属性、マネージ インターフェイス、およびマネージ クラスを使用して、サービスの構造の定義と実装の両方を行います。 + コントラクトはさまざまな方法で表現できます。ただし、WSDL と XSD は、利用しやすい方法でサービスを記述する優れた言語ではあるものの直接使用するのが難しいため、どのような場合でも、サービス コントラクトの実装ではなく、サービスを記述するだけです。 そのため、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] アプリケーションでは、マネージ属性、マネージ インターフェイス、およびマネージ クラスを使用して、サービスの構造の定義と実装の両方を行います。 - マネージ型で定義されたコントラクトは、特に他のプラットフォーム上のクライアントやその他のサービス実装側が必要とする場合に、メタデータ \(WSDL および XSD\) として変換 \(*エクスポート*とも呼ばれます\) できます。 これにより、どのクライアント アプリケーションに対してもパブリック メタデータを使用して記述できる、簡単なプログラミング モデルが実現します。 基になる SOAP メッセージの詳細 \(トランスポートとセキュリティ関連の情報など\) は、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] に残しておくことができます。WCF は、サービス コントラクト型システムと XML 型システム間で必要な変換を自動的に実行します。 + マネージ型で定義されたコントラクトを変換することができます (とも呼ばれる*エクスポート*) メタデータとして — WSDL と XSD — クライアントや他のサービス実装側が、他のプラットフォームで特に必要なときにします。 これにより、どのクライアント アプリケーションに対してもパブリック メタデータを使用して記述できる、簡単なプログラミング モデルが実現します。 基になる SOAP メッセージの詳細 (トランスポートとセキュリティ関連の情報など) は、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] に残しておくことができます。WCF は、サービス コントラクト型システムと XML 型システム間で必要な変換を自動的に実行します。 - コントラクトの設計[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[サービス コントラクトの設計](../../../../docs/framework/wcf/designing-service-contracts.md)」を参照してください。 コントラクトの実装[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[サービス コントラクトの実装](../../../../docs/framework/wcf/implementing-service-contracts.md)」を参照してください。 + [!INCLUDE[crabout](../../../../includes/crabout-md.md)]設計のコントラクトを参照してください[サービス コントラクトの設計](../../../../docs/framework/wcf/designing-service-contracts.md)です。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]コントラクトを実装するを参照してください[サービス コントラクトを実装する](../../../../docs/framework/wcf/implementing-service-contracts.md)です。 - さらに、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] には、メッセージ レベルでサービス コントラクト全体を開発できる機能も備わっています。 メッセージ レベルでサービス コントラクトを開発する方法[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[メッセージ コントラクトの使用](../../../../docs/framework/wcf/feature-details/using-message-contracts.md)」を参照してください。 SOAP XML 以外でサービスを開発する方法[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[POX アプリケーションとの相互運用性](../../../../docs/framework/wcf/feature-details/interoperability-with-pox-applications.md)」を参照してください。 + さらに、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] には、メッセージ レベルでサービス コントラクト全体を開発できる機能も備わっています。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]メッセージ レベルでの開発のサービス コントラクトを参照してください[メッセージ コントラクトを使用して](../../../../docs/framework/wcf/feature-details/using-message-contracts.md)です。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]開発サービスで SOAP XML 以外を参照してください[POX アプリケーションとの相互運用](../../../../docs/framework/wcf/feature-details/interoperability-with-pox-applications.md)です。 -### 要件の階層の理解 - サービス コントラクトは、操作をグループ化し、MEP、メッセージの種類、およびメッセージに格納されているデータ型を指定します。さらに、実装でコントラクトをサポートするために必要な実行時の動作のカテゴリ \(メッセージの暗号化と署名を要求するなど\) を示します。 ただし、サービス コントラクト自体は、これらの要件を満たす方法を正確に指定するわけではなく、これらの要件が必要であることを示すだけです。 暗号化の種類やメッセージに署名する方法は、準拠サービスの実装と構成によって決まります。 +### 要件の階層の理解 + サービス コントラクトは、操作をグループ化し、MEP、メッセージの種類、およびメッセージに格納されているデータ型を指定します。さらに、実装でコントラクトをサポートするために必要な実行時の動作のカテゴリ (メッセージの暗号化と署名を要求するなど) を示します。 ただし、サービス コントラクト自体は、これらの要件を満たす方法を正確に指定するわけではなく、これらの要件が必要であることを示すだけです。 暗号化の種類やメッセージに署名する方法は、準拠サービスの実装と構成によって決まります。 - コントラクトに必要なのは、サービス コントラクトの実装と、動作を追加するための実行時の構成に関するものであるという点に注意してください。 使用するサービスを公開するために満たす必要のある要件のセットは、上記の要件のセットを基に作成されます。 コントラクトが実装の要件を作成しても、実装ではサービスの実行を可能にするために、さらに多くの構成とバインディングを必要とする場合があります。 また、ホスト アプリケーションも、サービス構成とバインディングによって追加されるすべての要件をサポートする必要があります。 + コントラクトに必要なのは、サービス コントラクトの実装と、動作を追加するための実行時の構成に関するものであるという点に注意してください。 使用するサービスを公開するために満たす必要のある要件のセットは、上記の要件のセットを基に作成されます。 コントラクトが実装の要件を作成しても、実装ではサービスの実行を可能にするために、さらに多くの構成とバインディングを必要とする場合があります。 また、ホスト アプリケーションも、サービス構成とバインディングによって追加されるすべての要件をサポートする必要があります。 - [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] サービス アプリケーションを設計、実装、構成、およびホストする際には、この追加要件のプロセスに注意することが重要です。 たとえば、コントラクトでセッションをサポートする必要があることが指定されている場合があります。 その場合、コントラクトの要件をサポートするようにバインディングを構成する必要があります。そうしないと、サービス実装は機能しなくなります。 また、サービスが統合 Windows 認証を必要としており、インターネット インフォメーション サービス \(IIS\) でホストされる場合、サービスが存在する Web アプリケーションでは、統合 Windows 認証を有効にし、匿名サポートを無効にしておく必要があります。 各種サービス ホスト アプリケーションの機能と影響[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[ホスト](../../../../docs/framework/wcf/feature-details/hosting.md)」を参照してください。 + [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] サービス アプリケーションを設計、実装、構成、およびホストする際には、この追加要件のプロセスに注意することが重要です。 たとえば、コントラクトでセッションをサポートする必要があることが指定されている場合があります。 その場合、コントラクトの要件をサポートするようにバインディングを構成する必要があります。そうしないと、サービス実装は機能しなくなります。 また、サービスが統合 Windows 認証を必要としており、インターネット インフォメーション サービス (IIS) でホストされる場合、サービスが存在する Web アプリケーションでは、統合 Windows 認証を有効にし、匿名サポートを無効にしておく必要があります。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]機能と、別のサービス ホスト アプリケーションの種類の影響を参照してください。[ホスティング](../../../../docs/framework/wcf/feature-details/hosting.md)です。 -## 参照 - [エンドポイント : アドレス、バインディング、およびコントラクト](../../../../docs/framework/wcf/feature-details/endpoints-addresses-bindings-and-contracts.md) - [サービス コントラクトの設計](../../../../docs/framework/wcf/designing-service-contracts.md) - [サービス コントラクトの実装](../../../../docs/framework/wcf/implementing-service-contracts.md) \ No newline at end of file +## 関連項目 + [エンドポイント: アドレス、バインディング、およびコントラクト](../../../../docs/framework/wcf/feature-details/endpoints-addresses-bindings-and-contracts.md) + [サービス コントラクトの設計](../../../../docs/framework/wcf/designing-service-contracts.md) + [サービス コントラクトの実装](../../../../docs/framework/wcf/implementing-service-contracts.md) diff --git a/docs/framework/wcf/feature-details/discovery-find-and-findcriteria.md b/docs/framework/wcf/feature-details/discovery-find-and-findcriteria.md index 7226a60c544..2766ef7fb79 100644 --- a/docs/framework/wcf/feature-details/discovery-find-and-findcriteria.md +++ b/docs/framework/wcf/feature-details/discovery-find-and-findcriteria.md @@ -1,58 +1,61 @@ ---- -title: "探索検索と FindCriteria | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "探索検索と FindCriteria" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 99016fa4-1778-495b-b4cc-0e22fbec42c6 -caps.latest.revision: 6 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 6 ---- -# 探索検索と FindCriteria -探索検索操作は、1 つ以上のサービスを探索するためにクライアントによって開始される操作であり、探索における主要なアクションの 1 つです。検索を実行すると、WS\-Discovery Probe メッセージがネットワークを介して送信されます。指定された条件に一致するサービスは、WS\-Discovery ProbeMatch メッセージを使用して応答します。探索メッセージ[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、[WS\-Discovery の仕様](http://go.microsoft.com/fwlink/?LinkID=122347)を参照してください。 - -## DiscoveryClient - クラスは、検索操作を実行するメカニズムを提供し、探索クライアントの操作を簡単に実行できるようにします。このクラスには、\(ブロックする\) 同期検索を実行する メソッドと、ブロックしない非同期検索を実行する メソッドが含まれます。どちらのメソッドも パラメーターを使用し、 オブジェクトを介してユーザーに結果を提供します。 - -## FindCriteria - にはいくつかのプロパティがあり、検索対象のサービスを指定する検索条件と、検索を続行する期間を指定する検索終了条件に分類できます。 には、複数の検索条件を指定できます。既定では、サービスがすべての条件に一致する必要があり、そうでない場合は、サービスがそれ自体を一致サービスと見なしません。条件の一部にのみ一致するサービスを検索する場合は、サービスにカスタムの検索ロジックを実装するか、複数のクエリを使用します。 +caps.latest.revision: "6" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: c2eca9553862cf1349272142e4165c3cfd2e4f3f +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# 探索検索と FindCriteria +探索検索操作は、1 つ以上のサービスを探索するためにクライアントによって開始される操作であり、探索における主要なアクションの 1 つです。 検索を実行すると、WS-Discovery Probe メッセージがネットワークを介して送信されます。 指定された条件に一致するサービスは、WS-Discovery ProbeMatch メッセージを使用して応答します。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]探索メッセージを参照してください、 [Ws-discovery 仕様](http://go.microsoft.com/fwlink/?LinkID=122347)です。 + +## DiscoveryClient + クラスは、検索操作を実行するメカニズムを提供し、探索クライアントの操作を簡単に実行できるようにします。 このクラスには、(ブロックする) 同期検索を実行する メソッドと、ブロックしない非同期検索を実行する メソッドが含まれます。 どちらのメソッドも パラメーターを使用し、 オブジェクトを介してユーザーに結果を提供します。 + +## FindCriteria + にはいくつかのプロパティがあり、検索対象のサービスを指定する検索条件と、検索を続行する期間を指定する検索終了条件に分類できます。 には、複数の検索条件を指定できます。 既定では、サービスがすべての条件に一致する必要があり、そうでない場合は、サービスがそれ自体を一致サービスと見なしません。 条件の一部にのみ一致するサービスを検索する場合は、サービスにカスタムの検索ロジックを実装するか、複数のクエリを使用します。 検索条件は、次のとおりです。 -- \- 省略できます。検索対象のサービスのコントラクト名、およびサービスの検索に通常使用される条件を指定します。複数のコントラクト名が指定されると、すべてのコントラクトに一致するサービス エンドポイントのみが応答します。[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、各エンドポイントでサポートされるコントラクトは 1 つだけです。 +- - 省略できます。 検索対象のサービスのコントラクト名、およびサービスの検索に通常使用される条件を指定します。 複数のコントラクト名が指定されると、すべてのコントラクトに一致するサービス エンドポイントのみが応答します。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、各エンドポイントでサポートされるコントラクトは 1 つだけです。 -- \- 省略できます。Scopes は、個々のサービス エンドポイントの分類に使用される絶対 URI です。複数のエンドポイントが同じコントラクトを公開し、これらのエンドポイントのサブセットを検索する手段が必要な場合は、これを使用できます。複数のスコープが指定されると、すべてのスコープに一致するサービス エンドポイントのみが応答します。 +- - 省略できます。 Scopes は、個々のサービス エンドポイントの分類に使用される絶対 URI です。 複数のエンドポイントが同じコントラクトを公開し、これらのエンドポイントのサブセットを検索する手段が必要な場合は、これを使用できます。 複数のスコープが指定されると、すべてのスコープに一致するサービス エンドポイントのみが応答します。 -- \- Probe メッセージのスコープとエンドポイントのスコープとの一致の判定に使用する、一致アルゴリズムを指定します。サポートされているスコープ一致規則は、次の 5 つです。 +- - Probe メッセージのスコープとエンドポイントのスコープとの一致の判定に使用する、一致アルゴリズムを指定します。 サポートされているスコープ一致規則は、次の 5 つです。 - - : 大文字と小文字が区別される基本の文字列比較を実行します。 + - : 大文字と小文字が区別される基本の文字列比較を実行します。 - - : "\/" によって区切られたセグメント単位で一致を判定します。http:\/\/contoso\/building1 を検索する場合、サービスは http:\/\/contoso\/building\/floor1 というスコープと一致します。http:\/\/contoso\/building100 とは、最後の 2 セグメントが一致しないため、一致しません。 + - 区切られたセグメント単位で一致する「/」です。 http://contoso/building1 を検索する場合、サービスは http://contoso/building/floor1 というスコープと一致します。 http://contoso/building100 とは、最後の 2 セグメントが一致しないため、一致しません。 - - : LDAP URL を使用してセグメント単位でスコープの一致を判定します。 + - : LDAP URL を使用してセグメント単位でスコープの一致を判定します。 - - : UUID 文字列を使用して、スコープが完全に一致するかどうかを判定します。 + - : UUID 文字列を使用して、スコープが完全に一致するかどうかを判定します。 - - : スコープを指定していないサービスのみを対象に一致を判定します。 + - : スコープを指定していないサービスのみを対象に一致を判定します。 - スコープ一致規則が指定されていない場合は、 が使用されます。 + スコープ一致規則が指定されていない場合は、 が使用されます。 終了条件は次のとおりです。 -1. \- ネットワーク上でサービスからの応答を待機する最長時間。既定の時間は 20 秒です。 +1. - ネットワーク上でサービスからの応答を待機する最長時間。 既定の時間は 20 秒です。 -2. \- 待機する応答の最大件数。 が経過する前に 応答が受信された場合は、検出操作が終了します。 +2. - 待機する応答の最大件数。 が経過する前に 応答が受信された場合は、検出操作が終了します。 -## FindResponse - には、ネットワーク上で一致するサービスから送信された応答を保持する コレクション プロパティがあります。応答したサービスがない場合、このコレクションは空です。1 つ以上のサービスが応答した場合、各応答は オブジェクトに格納されます。これには、アドレスやコントラクトなど、サービスについての追加情報が含まれます。 +## FindResponse + には、ネットワーク上で一致するサービスから送信された応答を保持する コレクション プロパティがあります。 応答したサービスがない場合、このコレクションは空です。 1 つ以上のサービスが応答した場合、各応答は オブジェクトに格納されます。これには、アドレスやコントラクトなど、サービスについての追加情報が含まれます。 次の例は、コードで検索操作を実行する方法を示しています。 @@ -69,12 +72,11 @@ findCriteria.Duration = TimeSpan.FromSeconds(10); FindResponse findResponse = discoveryClient.Find(findCriteria); Console.WriteLine("Found {0} ICalculatorService endpoint(s).", findResponse.Endpoints.Count) - ``` -## 参照 - [WCF Discovery の概要](../../../../docs/framework/wcf/feature-details/wcf-discovery-overview.md) - [探索クライアント チャネルの使用](../../../../docs/framework/wcf/feature-details/using-the-discovery-client-channel.md) - [スコープを使用した探索](../../../../docs/framework/wcf/samples/discovery-with-scopes-sample.md) - [非同期検索](../../../../docs/framework/wcf/samples/asynchronous-find-sample.md) - [Basic](../../../../docs/framework/wcf/samples/basic-sample.md) \ No newline at end of file +## 関連項目 + [WCF Discovery の概要](../../../../docs/framework/wcf/feature-details/wcf-discovery-overview.md) + [探索クライアント チャネルの使用](../../../../docs/framework/wcf/feature-details/using-the-discovery-client-channel.md) + [スコープの検出](../../../../docs/framework/wcf/samples/discovery-with-scopes-sample.md) + [非同期検索](../../../../docs/framework/wcf/samples/asynchronous-find-sample.md) + [基本](../../../../docs/framework/wcf/samples/basic-sample.md) diff --git a/docs/framework/wcf/feature-details/filtering.md b/docs/framework/wcf/feature-details/filtering.md index 7198617a322..9bb57071073 100644 --- a/docs/framework/wcf/feature-details/filtering.md +++ b/docs/framework/wcf/feature-details/filtering.md @@ -1,94 +1,97 @@ ---- -title: "フィルター処理 | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "フィルター処理" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 4002946c-e34a-4356-8cfb-e25912a4be63 -caps.latest.revision: 9 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 9 ---- -# フィルター処理 -[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] フィルター処理システムは、宣言的なフィルターを使用してメッセージの照合処理と操作上の判断を行います。フィルターを使用してメッセージの一部を調べることで、そのメッセージで必要な操作を決定できます。たとえば、キュー プロセスでは、XPath 1.0 クエリを使用して既知のヘッダー優先度要素をチェックし、メッセージをキューの先頭に移動するべきかどうかを決定します。 +caps.latest.revision: "9" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: b97c53225afdc2710db26720ed3f28c12a322d8b +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# フィルター処理 +[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] フィルター処理システムは、宣言的なフィルターを使用してメッセージの照合処理と操作上の判断を行います。 フィルターを使用してメッセージの一部を調べることで、そのメッセージで必要な操作を決定できます。 たとえば、キュー プロセスでは、XPath 1.0 クエリを使用して既知のヘッダー優先度要素をチェックし、メッセージをキューの先頭に移動するべきかどうかを決定します。 - フィルター処理システムは、特定の [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] メッセージに対して、どのフィルターのセットが `true` であるかを効率よく判断できる一連のクラスから構成されます。 + フィルター処理システムは、特定の `true` メッセージに対して、どのフィルターのセットが [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] であるかを効率よく判断できる一連のクラスから構成されます。 - フィルター処理システムは、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] メッセージングの中核となるコンポーネントであり、非常に高速に動作するように設計されています。フィルターの各実装は、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] メッセージの特定の種類の照合に対して最適化されています。 + フィルター処理システムは、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] メッセージングの中核となるコンポーネントであり、非常に高速に動作するように設計されています。 フィルターの各実装は、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] メッセージの特定の種類の照合に対して最適化されています。 - フィルター処理システムは、スレッド セーフではありません。アプリケーションは、すべてのロック セマンティクスを処理する必要があります。ただし、\(スレッドに対する\) マルチ リーダー\/シングル ライターはサポートされています。 + フィルター処理システムは、スレッド セーフではありません。 アプリケーションは、すべてのロック セマンティクスを処理する必要があります。 ただし、(スレッドに対する) マルチ リーダー/シングル ライターはサポートされています。 -## フィルター処理が適する場合 - フィルター処理は、メッセージを適切なアプリケーション コンポーネントにディスパッチする処理の一部であり、メッセージの受信後に行われます。フィルター処理システムの設計では、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] のいくつかのサブシステム \(メッセージング、ルーティング、セキュリティ、イベント処理、およびシステム管理など\) の要件に対処します。 +## フィルター処理が適する場合 + フィルター処理は、メッセージを適切なアプリケーション コンポーネントにディスパッチする処理の一部であり、メッセージの受信後に行われます。 フィルター処理システムの設計では、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] のいくつかのサブシステム (メッセージング、ルーティング、セキュリティ、イベント処理、およびシステム管理など) の要件に対処します。 -## フィルター - フィルター エンジンには、フィルターとフィルター テーブルという 2 つの主要コンポーネントが含まれます。フィルターは、ユーザーが指定した論理条件に基づいてメッセージに関する論理判定を行います。フィルターは クラスを実装します。 +## フィルター + フィルター エンジンには、フィルターとフィルター テーブルという 2 つの主要コンポーネントが含まれます。 フィルターは、ユーザーが指定した論理条件に基づいてメッセージに関する論理判定を行います。 フィルターは クラスを実装します。 - メッセージがフィルターの一致条件を満たしているかどうかを判定するには、 メソッドを使用します。これらのメソッドの中の 1 つは、メッセージのヘッダーをテストしますが、メッセージ本文は検査できません。他のメソッドは入力パラメーターとして*メッセージ バッファー*を取得し、メッセージ本文の検査が可能です。 + メッセージがフィルターの一致条件を満たしているかどうかを判定するには、 メソッドを使用します。 これらのメソッドの中の 1 つは、メッセージのヘッダーをテストしますが、メッセージ本文は検査できません。 その他のメソッドは、*メッセージ バッファー*入力パラメーターとして表示され、メッセージの本文を調べることができます。 通常、フィルターは個別にテストされるのではなく、フィルター テーブルの一部としてテストされます。フィルター テーブルは、 メソッドによって作成されるジェネリック クラスです。 - 数種類のフィルターがあり、それぞれが特定の種類のブール型の条件での照合処理に特化されています。フィルターを作成した後に、フィルターが使用する条件を変更することはできません。フィルターの条件を変更するには、新しいフィルターを作成し、既存のフィルターを削除します。 + 数種類のフィルターがあり、それぞれが特定の種類のブール型の条件での照合処理に特化されています。 フィルターを作成した後に、フィルターが使用する条件を変更することはできません。フィルターの条件を変更するには、新しいフィルターを作成し、既存のフィルターを削除します。 -### アクション フィルター - には、アクション文字列の一覧が含まれます。フィルターの一覧にあるアクションのいずれかが、メッセージまたはメッセージ バッファーにある Action ヘッダーに一致した場合、`Match` メソッドは `true` を返します。この一覧が空である場合、フィルターはすべてに一致するフィルターと見なされるため、メッセージまたはメッセージ バッファーはすべて一致することになり、`Match` メソッドは `true` を返します。フィルターの一覧にあるすべてのアクションが、メッセージまたはメッセージ バッファーにある Action ヘッダーに一致しない場合、`Match` メソッドは `false` を返します。メッセージにアクションがなく、フィルターの一覧が空でない場合、`Match` メソッドは `false` を返します。 +### アクション フィルター + には、アクション文字列の一覧が含まれます。 フィルターの一覧にあるアクションのいずれかが、メッセージまたはメッセージ バッファーにある Action ヘッダーに一致した場合、`Match` メソッドは `true` を返します。 この一覧が空である場合、フィルターはすべてに一致するフィルターと見なされるため、メッセージまたはメッセージ バッファーはすべて一致することになり、`Match` メソッドは `true` を返します。 フィルターの一覧にあるすべてのアクションが、メッセージまたはメッセージ バッファーにある Action ヘッダーに一致しない場合、`Match` メソッドは `false` を返します。 メッセージにアクションがなく、フィルターの一覧が空でない場合、`Match` メソッドは `false` を返します。 -### エンドポイント アドレス フィルター - は、メッセージのヘッダー コレクションに示されるエンドポイント アドレスに基づいて、メッセージおよびメッセージ バッファーのフィルター処理を行います。メッセージがこのようなフィルターを通過するには、次の条件を満たす必要があります。 +### エンドポイント アドレス フィルター + は、メッセージのヘッダー コレクションに示されるエンドポイント アドレスに基づいて、メッセージおよびメッセージ バッファーのフィルター処理を行います。 メッセージがこのようなフィルターを通過するには、次の条件を満たす必要があります。 -- フィルターのアドレス URI \(Uniform Resource Identifier\) がメッセージの To ヘッダーのアドレスと同じであること。 +- フィルターのアドレス URI (Uniform Resource Identifier) がメッセージの To ヘッダーのアドレスと同じであること。 -- フィルターのアドレス \(`address.Headers` コレクション\) にある各エンドポイント パラメーターが、マッピング対象のヘッダーをメッセージ内で見つけることができること。メッセージまたはメッセージ バッファーの追加のヘッダーは、一致を `true` の状態にしておくためであれば、許容されます。 +- フィルターのアドレス (`address.Headers` コレクション) にある各エンドポイント パラメーターが、マッピング対象のヘッダーをメッセージ内で見つけることができること。 メッセージまたはメッセージ バッファーの追加のヘッダーは、一致を `true` の状態にしておくためであれば、許容されます。 -### プレフィックス エンドポイント アドレス フィルター +### プレフィックス エンドポイント アドレス フィルター -1. は、メッセージ URI のプレフィックスとも一致できるという点を除けば、 フィルターと同じように動作します。たとえば、アドレス http:\/\/www.adatum.com を指定したフィルターは、http:\/\/www.adatum.com\/userA 宛のメッセージと一致します。 +1. は、メッセージ URI のプレフィックスとも一致できるという点を除けば、 フィルターと同じように動作します。 たとえば、アドレス http://www.adatum.com を指定したフィルターは、http://www.adatum.com/userA 宛のメッセージと一致します。 -### XPath メッセージ フィルター - は、XPath 式を使用して、XML ドキュメントに特定の要素、属性、テキスト、その他の XML 構文が含まれているかどうかを判定します。このフィルターは、XPath の厳密なサブセットに対して非常に効率的に処理できるように最適化されています。XML Path 言語の詳細については、[W3C XML Path Language 1.0 の仕様](http://go.microsoft.com/fwlink/?LinkId=94779)を参照してください。 +### XPath メッセージ フィルター + は、XPath 式を使用して、XML ドキュメントに特定の要素、属性、テキスト、その他の XML 構文が含まれているかどうかを判定します。 このフィルターは、XPath の厳密なサブセットに対して非常に効率的に処理できるように最適化されています。 XML パス言語については、「、 [W3C XML パス言語 1.0 仕様](http://go.microsoft.com/fwlink/?LinkId=94779)です。 - アプリケーションは通常、エンドポイントで を使用して SOAP メッセージの内容を問い合わせ、その結果に基づいて適切なアクションを実行します。たとえば、キューの処理では、XPath クエリを使用して既知のヘッダーの優先度要素を検査し、メッセージをキューの先頭に移動するべきかどうかを決定します。 + アプリケーションは通常、エンドポイントで を使用して SOAP メッセージの内容を問い合わせ、その結果に基づいて適切なアクションを実行します。 たとえば、キューの処理では、XPath クエリを使用して既知のヘッダーの優先度要素を検査し、メッセージをキューの先頭に移動するべきかどうかを決定します。 -## フィルター テーブル - フィルター テーブルは、キーと値のペアを保存するために使用されます。ここで、フィルターがキーであり、これに関連するデータが値になります。このフィルター データは、メッセージがフィルターに一致した場合に起きるアクションを示すために使用することができ、その型はフィルター テーブル クラスのジェネリック パラメーターになります。フィルター データは、ルーティングのルール、セッション セキュリティの状態、チャネル上のリスナーなどで構成できます。データは、データ フロー制御が必要な場所で使用できます。 +## フィルター テーブル + フィルター テーブルは、キーと値のペアを保存するために使用されます。ここで、フィルターがキーであり、これに関連するデータが値になります。 このフィルター データは、メッセージがフィルターに一致した場合に起きるアクションを示すために使用することができ、その型はフィルター テーブル クラスのジェネリック パラメーターになります。 フィルター データは、ルーティングのルール、セッション セキュリティの状態、チャネル上のリスナーなどで構成できます。 データは、データ フロー制御が必要な場所で使用できます。 フィルター テーブルは、 ジェネリック インターフェイスを実装します。 - フィルター テーブルには、テーブル内のすべてのフィルターに対してメッセージとの一致を調べて、一致したフィルターまたはデータの順序付けられていないコレクションを返すメソッドがいくつかあります。メソッドの中には複数回の一致を調べて、一致したすべての項目を返すものもあります。それ以外のメソッドは 1 回だけの一致となり、1 つの項目のみを返し、フィルターが複数回一致する場合には、 をスローします。 + フィルター テーブルには、テーブル内のすべてのフィルターに対してメッセージとの一致を調べて、一致したフィルターまたはデータの順序付けられていないコレクションを返すメソッドがいくつかあります。 メソッドの中には複数回の一致を調べて、一致したすべての項目を返すものもあります。 それ以外のメソッドは 1 回だけの一致となり、1 つの項目のみを返し、フィルターが複数回一致する場合には、 をスローします。 -### メッセージ フィルター テーブル - は、 の最も一般的な実装です。このテーブルには、すべての種類のフィルターを格納できます。 +### メッセージ フィルター テーブル + は、 の最も一般的な実装です。 このテーブルには、すべての種類のフィルターを格納できます。 - フィルターには数字による優先順位を割り当てることができます。一番大きな数が最も高い優先順位となります。複数の種類のフィルターが、同じ優先度を持つことができます。また特定の種類のフィルターが、複数の優先順位レベルに現れることもできます。 + フィルターには数字による優先順位を割り当てることができます。一番大きな数が最も高い優先順位となります。 複数の種類のフィルターが、同じ優先度を持つことができます。 また特定の種類のフィルターが、複数の優先順位レベルに現れることもできます。 - 照合処理は優先順位が最も高いフィルターから開始され、ある優先順位で一致するフィルターが見つかると、それよりも優先順位の低いフィルターは検査されません。そのため、フィルターが 1 回だけ一致するメソッドを使用しているときに、あるメッセージに対してフィルターの一致が複数回発生した場合、一致フィルターの優先順位がそれぞれ異なっていれば、例外はスローされず、最も優先順位の高いフィルターが返されます。同様に、複数回フィルターが一致するメソッドでも、優先順位が最も高い一致フィルターのみが返されます。 + 照合処理は優先順位が最も高いフィルターから開始され、ある優先順位で一致するフィルターが見つかると、それよりも優先順位の低いフィルターは検査されません。 そのため、フィルターが 1 回だけ一致するメソッドを使用しているときに、あるメッセージに対してフィルターの一致が複数回発生した場合、一致フィルターの優先順位がそれぞれ異なっていれば、例外はスローされず、最も優先順位の高いフィルターが返されます。 同様に、複数回フィルターが一致するメソッドでも、優先順位が最も高い一致フィルターのみが返されます。 -### XPath メッセージ フィルター テーブル +### XPath メッセージ フィルター テーブル は宣言的な XPath フィルターに最適化されているため、テーブル キーは になります。 - クラスは、ほとんどのメッセージ シナリオをカバーし、XPath 1.0 の文法を完全にサポートする XPath のサブセットに合わせてマッチングを最適化します。また、効率的な並列マッチング用のアルゴリズムも最適化します。 + クラスは、ほとんどのメッセージ シナリオをカバーし、XPath 1.0 の文法を完全にサポートする XPath のサブセットに合わせてマッチングを最適化します。 また、効率的な並列マッチング用のアルゴリズムも最適化します。 - このテーブルには、 および 上で動作する特殊な `Match` メソッドがいくつかあります。 は、 プロパティを追加することで、 クラスを拡張します。このプロパティを使用すると、ナビゲーターを複製せずに XML ドキュメント内の位置を迅速に保存し、読み込むことができます。 を使用してそうした操作を行うには、大量のメモリ領域を割り当てる必要があります。[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] XPath エンジンでは、XML ドキュメントでクエリの実行中にカーソルの位置を頻繁に記録する必要があるため、 により、メッセージ処理にとって重要な最適化が提供されます。 + このテーブルには、`Match` および 上で動作する特殊な メソッドがいくつかあります。 は、 プロパティを追加することで、 クラスを拡張します。 このプロパティを使用すると、ナビゲーターを複製せずに XML ドキュメント内の位置を迅速に保存し、読み込むことができます。 を使用してそうした操作を行うには、大量のメモリ領域を割り当てる必要があります。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] XPath エンジンでは、XML ドキュメントでクエリの実行中にカーソルの位置を頻繁に記録する必要があるため、 により、メッセージ処理にとって重要な最適化が提供されます。 -## 顧客シナリオ - フィルター処理は、メッセージに含まれるデータに応じて、異なる処理モジュールにメッセージを送信する必要がある場合に、いつでも使用できます。一般的なのは、アクション コードに基づいてメッセージをルーティングするシナリオと、メッセージのエンドポイント アドレスに基づいてメッセージのストリームを分離化するシナリオの 2 つです。 +## 顧客シナリオ + フィルター処理は、メッセージに含まれるデータに応じて、異なる処理モジュールにメッセージを送信する必要がある場合に、いつでも使用できます。 一般的なのは、アクション コードに基づいてメッセージをルーティングするシナリオと、メッセージのエンドポイント アドレスに基づいてメッセージのストリームを分離化するシナリオの 2 つです。 -### ルーティング - エンドポイントのリスナーは、メッセージの SOAP ヘッダーに 1 つ以上のアクション コードが含まれるメッセージをリッスンします。これは、アクション コードを含む配列をコンストラクターに渡して を作成することで実装します。このフィルターは、`ListenerFactory` に登録するために使用されるため、アクションがフィルター内のアクション コードのいずれかと一致するメッセージだけが特定のエンドポイントに到達します。 +### ルーティング + エンドポイントのリスナーは、メッセージの SOAP ヘッダーに 1 つ以上のアクション コードが含まれるメッセージをリッスンします。 これは、アクション コードを含む配列をコンストラクターに渡して を作成することで実装します。 このフィルターは、`ListenerFactory` に登録するために使用されるため、アクションがフィルター内のアクション コードのいずれかと一致するメッセージだけが特定のエンドポイントに到達します。 -### 分離化 - 複数のエンドポイントがネットワーク上の同じ `ServiceListener` から分散している場合、メッセージを分離化し、メッセージが特定のエンドポイント アドレスに属しているかどうかを確認する唯一の方法は、 を使用することです。このフィルターは、ヘッダーに格納されている情報に対して検索を実行して、登録されているエンドポイントに向けられたメッセージを選択します。このようなフィルターを通過するのは、次の両方に対応する必要なヘッダーをすべて持っているメッセージだけです。 +### 分離化 + 複数のエンドポイントがネットワーク上の同じ `ServiceListener` から分散している場合、メッセージを分離化し、メッセージが特定のエンドポイント アドレスに属しているかどうかを確認する唯一の方法は、 を使用することです。このフィルターは、ヘッダーに格納されている情報に対して検索を実行して、登録されているエンドポイントに向けられたメッセージを選択します。 このようなフィルターを通過するのは、次の両方に対応する必要なヘッダーをすべて持っているメッセージだけです。 - `EndpointAddress` にある URI -- で指定された `EndpointAddress` にある残りのエンドポイント パラメーター +- `EndpointAddress` で指定された にある残りのエンドポイント パラメーター -## 参照 - [データ転送とシリアル化](../../../../docs/framework/wcf/feature-details/data-transfer-and-serialization.md) \ No newline at end of file +## 関連項目 + [データ転送とシリアル化](../../../../docs/framework/wcf/feature-details/data-transfer-and-serialization.md) diff --git a/docs/framework/wcf/feature-details/how-to-create-a-secure-session.md b/docs/framework/wcf/feature-details/how-to-create-a-secure-session.md index 8244d61cf79..27e6cd82945 100644 --- a/docs/framework/wcf/feature-details/how-to-create-a-secure-session.md +++ b/docs/framework/wcf/feature-details/how-to-create-a-secure-session.md @@ -1,46 +1,51 @@ ---- -title: "方法 : セキュリティで保護されたセッションを作成する | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "セキュリティ [WCF], セッションの作成" +--- +title: "方法 : セキュリティで保護されたセッションを作成する" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb +helpviewer_keywords: security [WCF], creating a session ms.assetid: b6f42b5a-bbf7-45cf-b917-7ec9fa7ae110 -caps.latest.revision: 10 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 10 ---- -# 方法 : セキュリティで保護されたセッションを作成する -メッセージ セキュリティを有効にすると、[\](../../../../docs/framework/configure-apps/file-schema/wcf/basichttpbinding.md) バインディングを除き、システム提供のバインディング [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] では、セキュリティで保護されたセッションが自動的に使用されます。 - - 既定では、セキュリティで保護されたセッションは、再利用される Web サーバーで存続します。 セキュリティで保護されたセッションが確立されると、クライアントとサービスが、セキュリティで保護されたセッションに関連付けられているキーをキャッシュします。 メッセージを交換するときは、キャッシュされたキーの識別子のみが交換されます。 Web サーバーが再利用される場合は、Web サーバーが識別子のキャッシュされたキーを取得できないようにキャッシュも再利用されます。 これが発生した場合、例外がクライアントにスローされます。 ステートフルなセキュリティ コンテキスト トークン \(SCT: Security Context Token\) を使用するセキュリティで保護されたセッションは、再利用される Web サーバーで存続することができます。 セキュリティで保護されたセッションでステートフルな SCT を使用する方法[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[方法 : セキュリティで保護されたセッションに対しセキュリティ コンテキスト トークンを作成する](../../../../docs/framework/wcf/feature-details/how-to-create-a-security-context-token-for-a-secure-session.md)」を参照してください。 - -### サービスが、システム提供のバインディングの 1 つを使用して、セキュリティで保護されたセッションを使用するように指定するには +caps.latest.revision: "10" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: f2393209352f18eb25b9837ca1ad8ca2746b91d6 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# 方法 : セキュリティで保護されたセッションを作成する +例外を除いて、 [ \](../../../../docs/framework/configure-apps/file-schema/wcf/basichttpbinding.md)のシステム指定のバインディング、バインディング[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)]メッセージ セキュリティが有効になっているセキュリティで保護されたセッションを自動的に使用します。 + + 既定では、セキュリティで保護されたセッションは、再利用される Web サーバーで存続します。 セキュリティで保護されたセッションが確立されると、クライアントとサービスが、セキュリティで保護されたセッションに関連付けられているキーをキャッシュします。 メッセージを交換するときは、キャッシュされたキーの識別子のみが交換されます。 Web サーバーが再利用される場合は、Web サーバーが識別子のキャッシュされたキーを取得できないようにキャッシュも再利用されます。 これが発生した場合、例外がクライアントにスローされます。 ステートフルなセキュリティ コンテキスト トークン (SCT: Security Context Token) を使用するセキュリティで保護されたセッションは、再利用される Web サーバーで存続することができます。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]セキュリティで保護されたセッションでステートフルな SCT を使用して参照してください[する方法: セキュリティで保護されたセッションのセキュリティ コンテキスト トークンを作成](../../../../docs/framework/wcf/feature-details/how-to-create-a-security-context-token-for-a-secure-session.md)です。 + +### サービスが、システム提供のバインディングの 1 つを使用して、セキュリティで保護されたセッションを使用するように指定するには - メッセージ セキュリティをサポートするシステム提供のバインディングを使用するようにサービスを構成します。 - [\](../../../../docs/framework/configure-apps/file-schema/wcf/basichttpbinding.md) バインディングを除き、システム提供のバインディングでメッセージ セキュリティが使用されるように設定しておくと、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] ではセキュリティで保護されたセッションが自動的に使用されます。 次の表は、メッセージ セキュリティをサポートするシステム提供のバインディングを示し、そのバインディングでメッセージ セキュリティが既定のセキュリティ機構であるかどうかを示しています。 + 例外を除いて、 [ \](../../../../docs/framework/configure-apps/file-schema/wcf/basichttpbinding.md)メッセージ セキュリティを使用するシステム提供のバインディングが構成されている場合、バインディング、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)]自動的にセキュリティで保護されたセッションを使用します。 次の表は、メッセージ セキュリティをサポートするシステム提供のバインディングを示し、そのバインディングでメッセージ セキュリティが既定のセキュリティ機構であるかどうかを示しています。 |システム提供のバインディング|構成要素|既定でメッセージ セキュリティが有効| - |--------------------|----------|------------------------| - ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/basichttpbinding.md)|X| - ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/wshttpbinding.md)|はい| - ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/wsdualhttpbinding.md)|はい| - ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/wsfederationhttpbinding.md)|はい| - ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/nettcpbinding.md)|X| - ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/netmsmqbinding.md)|X| + |------------------------------|---------------------------|------------------------------------| + ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/basichttpbinding.md)|いいえ| + ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/wshttpbinding.md)|はい| + ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/wsdualhttpbinding.md)|はい| + ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/wsfederationhttpbinding.md)|はい| + ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/nettcpbinding.md)|いいえ| + ||[\](../../../../docs/framework/configure-apps/file-schema/wcf/netmsmqbinding.md)|いいえ| - 次のコード例に使用されている構成では、[\](../../../../docs/framework/configure-apps/file-schema/wcf/wshttpbinding.md)、メッセージ セキュリティ、およびセキュリティで保護されたセッションを使用する `wsHttpBinding_Calculator` という名前のバインディングを指定しています。 + 次のコード例は、という名前のバインディングを指定する構成を使用して`wsHttpBinding_Calculator`を使用して、 [ \](../../../../docs/framework/configure-apps/file-schema/wcf/wshttpbinding.md)、メッセージ セキュリティ、およびセキュリティで保護されたセッションです。 - ``` + ```xml @@ -52,23 +57,23 @@ caps.handback.revision: 10 ``` - [\](../../../../docs/framework/configure-apps/file-schema/wcf/wshttpbinding.md)、メッセージ セキュリティ、およびセキュリティで保護されたセッションを使用して、`secureCalculator` サービスをセキュリティで保護するように指定するコード例を次に示します。 + 次のコード例を指定する、 [ \](../../../../docs/framework/configure-apps/file-schema/wcf/wshttpbinding.md)、メッセージ セキュリティ、およびセキュリティで保護されたセッションをセキュリティで保護を使用する、`secureCalculator`サービス。 - [!code-csharp[c_CreateSecureSession#1](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_createsecuresession/cs/secureservice.cs#1)] + [!code-csharp[c_CreateSecureSession#1](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_createsecuresession/cs/secureservice.cs#1)] [!code-vb[c_CreateSecureSession#1](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_createsecuresession/vb/secureservice.vb#1)] > [!NOTE] - > [\](../../../../docs/framework/configure-apps/file-schema/wcf/wshttpbinding.md) については、`establishSecurityContext` 属性を `false` に設定してセキュリティで保護されたセッションを無効にできます。 他のシステム提供のバインディングについては、カスタム バインディングを作成することでのみ、セキュリティで保護されたセッションを無効にできます。 + > セキュリティで保護されたセッションを無効にできる、 [ ](../../../../docs/framework/configure-apps/file-schema/wcf/wshttpbinding.md)を設定して、`establishSecurityContext`属性を`false`です。 他のシステム提供のバインディングについては、カスタム バインドを作成することでのみ、セキュリティで保護されたセッションを無効にできます。 -### カスタム バインディングを使用して、サービスでセキュリティで保護されたセッションが使用されるように指定するには +### カスタム バインディングを使用して、サービスでセキュリティで保護されたセッションが使用されるように指定するには -- セキュリティで保護されたセッションで SOAP メッセージが保護されるように指定したカスタム バインディングを作成します。 +- セキュリティで保護されたセッションで SOAP メッセージが保護されるように指定したカスタム バインドを作成します。 - カスタム バインディングの作成[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[方法 : システム指定のバインディングをカスタマイズする](../../../../docs/framework/wcf/extending/how-to-customize-a-system-provided-binding.md)」を参照してください。 + [!INCLUDE[crabout](../../../../includes/crabout-md.md)]カスタム バインドの作成を参照してください[する方法: システム指定のバインディングをカスタマイズ](../../../../docs/framework/wcf/extending/how-to-customize-a-system-provided-binding.md)です。 - 次のコード例で使用されている構成では、セキュリティで保護されたセッションを使用して SOAP メッセージを保護するカスタム バインディングを指定しています。 + 次のコード例で使用されている構成では、セキュリティで保護されたセッションを使用して SOAP メッセージを保護するカスタム バインドを指定しています。 - ``` + ```xml @@ -82,10 +87,10 @@ caps.handback.revision: 10 ``` - セキュリティで保護されたセッションをブートストラップするための 認証モードを使用する、カスタム バインディングを作成するコード例を次に示します。 + セキュリティで保護されたセッションをブートストラップするための 認証モードを使用する、カスタム バインディングを作成するコード例を次に示します。 - [!code-csharp[c_CreateSecureSession#2](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_createsecuresession/cs/secureservice.cs#2)] + [!code-csharp[c_CreateSecureSession#2](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_createsecuresession/cs/secureservice.cs#2)] [!code-vb[c_CreateSecureSession#2](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_createsecuresession/vb/secureservice.vb#2)] -## 参照 - [WCF のバインディングの概要](../../../../docs/framework/wcf/bindings-overview.md) \ No newline at end of file +## 関連項目 + [WCF のバインディングの概要](../../../../docs/framework/wcf/bindings-overview.md) diff --git a/docs/framework/wcf/feature-details/how-to-enable-streaming.md b/docs/framework/wcf/feature-details/how-to-enable-streaming.md index 08ab1873799..c87aeeb600e 100644 --- a/docs/framework/wcf/feature-details/how-to-enable-streaming.md +++ b/docs/framework/wcf/feature-details/how-to-enable-streaming.md @@ -1,33 +1,39 @@ --- -title: "方法 : ストリーミングを有効にする | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -ms.assetid: 6ca2cf4b-c7a1-49d8-a79b-843a90556ba4 -caps.latest.revision: 13 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 13 +title: "方法 : ストリーミングを有効にする" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb +ms.assetid: 6ca2cf4b-c7a1-49d8-a79b-843a90556ba4 +caps.latest.revision: "13" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 8436ceefea936ddbf708aa3f79c5f7bd8153ac66 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 --- -# 方法 : ストリーミングを有効にする +# 方法 : ストリーミングを有効にする [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] では、バッファー転送またはストリーミング転送を使用してメッセージを送信できます。 既定のバッファー転送モードでは、受信側がメッセージを読み取る前に、メッセージの送信が完了している必要があります。 ストリーミング転送モードでは、送信が完了していなくても、受信側でメッセージの処理を開始できます。 ストリーミング モードは、渡される情報が長い場合、または連続的に処理する場合に役立ちます。 ストリーミング モードは、メッセージが大きすぎてすべてをバッファーできない場合にも役立ちます。 ストリーミングを有効にするには、`OperationContract` を適切に定義し、トランスポート レベルでストリーミングを有効にします。 ### データをストリーミングするには -1. データをストリーミングするには、サービスの `OperationContract` が次の&2; つの要件を満たしている必要があります。 +1. データをストリーミングするには、サービスの `OperationContract` が次の 2 つの要件を満たしている必要があります。 - 1. ストリーミングするデータを保持するパラメーターが、メソッド内の唯一のパラメーターになるようにします。 たとえば、入力メッセージをストリーミングする場合、厳密に&1; つの入力パラメーターが操作に含まれている必要があります。 同様に、出力メッセージをストリーミングする場合、厳密に&1; つの出力パラメーターまたは戻り値が操作に含まれている必要があります。 + 1. ストリーミングするデータを保持するパラメーターが、メソッド内の唯一のパラメーターになるようにします。 たとえば、入力メッセージをストリーミングする場合、厳密に 1 つの入力パラメーターが操作に含まれている必要があります。 同様に、出力メッセージをストリーミングする場合、厳密に 1 つの出力パラメーターまたは戻り値が操作に含まれている必要があります。 - 2. パラメーターと戻り値の型の少なくとも&1; つある必要があります、またはします。 + 2. パラメーターおよび戻り値の型の少なくとも 1 つが、 または になる必要があります。 ストリーミングされたデータのコントラクトの例を次に示します。 @@ -52,7 +58,7 @@ caps.handback.revision: 13 1. 次のサンプルの構成スニペットでは、`TransferMode` とカスタム HTTP バインディングで、`basicHttpBinding` プロパティをストリーミングに設定しています。 - + [!code-xml[c_HowTo_EnableStreaming#103](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_howto_enablestreaming/common/app.config#103)] 2. 次のコード スニペットでは、`TransferMode` とカスタム HTTP バインディングで、`basicHttpBinding` プロパティをストリーミングに設定しています。 @@ -71,13 +77,13 @@ caps.handback.revision: 13 ### カスタム ストリームの書き込み -1. カスタム ストリーム クラスを派生が送信されるデータ ストリームの各チャンクに対して特殊な処理を行うにします。 カスタム ストリームの例として、`GetReversedStream` メソッドと `ReverseStream` クラスのコードを次に示します。 +1. 送受信中のデータ ストリームの各チャンクに対して特殊な処理を行うには、 からカスタム ストリーム クラスを派生します。 カスタム ストリームの例として、`GetReversedStream` メソッドと `ReverseStream` クラスのコードを次に示します。 - `GetReversedStream` では、`ReverseStream` の新しいインスタンスを作成して返します。 実際の処理は、システムが `ReverseStream` オブジェクトの読み取りを行うときに発生します。 `ReverseStream.Read` メソッドは、基になるファイルからバイトのチャンクを読み取り、バイトを反転し、その反転したバイトを返します。 このメソッドは、ファイル全体の内容を反転しません。一度に&1; つのバイト チャンクを反転します。 この例では、ストリームの内容の読み取りやストリームへの書き込み時に、ストリーミング処理を実行する方法を示します。 + `GetReversedStream` では、`ReverseStream` の新しいインスタンスを作成して返します。 実際の処理は、システムが `ReverseStream` オブジェクトの読み取りを行うときに発生します。 `ReverseStream.Read` メソッドは、基になるファイルからバイトのチャンクを読み取り、バイトを反転し、その反転したバイトを返します。 このメソッドは、ファイル全体の内容を反転しません。一度に 1 つのバイト チャンクを反転します。 この例では、ストリームの内容の読み取りやストリームへの書き込み時に、ストリーミング処理を実行する方法を示します。 [!code-csharp[c_HowTo_EnableStreaming#2](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_howto_enablestreaming/cs/service.cs#2)] [!code-vb[c_HowTo_EnableStreaming#2](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_howto_enablestreaming/vb/service.vb#2)] ## 関連項目 - [大規模データとストリーミング](../../../../docs/framework/wcf/feature-details/large-data-and-streaming.md) - [ストリーム](../../../../docs/framework/wcf/samples/stream.md) \ No newline at end of file + [大規模なデータとストリーミング](../../../../docs/framework/wcf/feature-details/large-data-and-streaming.md) + [ストリーム](../../../../docs/framework/wcf/samples/stream.md) diff --git a/docs/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-a-configuration-file.md b/docs/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-a-configuration-file.md index da58ecff190..9a1886f4617 100644 --- a/docs/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-a-configuration-file.md +++ b/docs/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-a-configuration-file.md @@ -1,28 +1,31 @@ ---- -title: "方法: 構成ファイルを使用してサービスのメタデータを公開する | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "方法: 構成ファイルを使用してサービスのメタデータを公開する" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: f061443f-92df-4824-b36a-609c4cd14a17 -caps.latest.revision: 24 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 24 ---- -# 方法: 構成ファイルを使用してサービスのメタデータを公開する -このトピックは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] サービスのメタデータを公開する手段を示す&2; つの「方法」トピックのうちの&1; つです。 構成ファイルとコードを使用して、サービスがメタデータを公開する手段を指定する方法は&2; つあります。 このトピックでは、構成ファイルを使用してサービスのメタデータを公開する方法について説明します。 +caps.latest.revision: "24" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: e94fe7135d51c4e1578ca69768b6d0ba2aa6ae6c +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# 方法: 構成ファイルを使用してサービスのメタデータを公開する +このトピックは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] サービスのメタデータを公開する手段を示す 2 つの「方法」トピックのうちの 1 つです。 構成ファイルとコードを使用して、サービスがメタデータを公開する手段を指定する方法は 2 つあります。 このトピックでは、構成ファイルを使用してサービスのメタデータを公開する方法について説明します。 > [!CAUTION] -> このトピックでは、セキュリティで保護されていない方法でメタデータを公開する方法について説明します。 クライアントは、サービスからメタデータを取得できます。 安全な方法でメタデータを公開するサービスを必要とする場合は、次を参照してください。[カスタム セキュリティで保護されたメタデータ エンドポイント](../../../../docs/framework/wcf/samples/custom-secure-metadata-endpoint.md)します。 +> このトピックでは、セキュリティで保護されていない方法でメタデータを公開する方法について説明します。 クライアントは、サービスからメタデータを取得できます。 安全な方法でメタデータを公開するようにサービスを必要とする場合は、次を参照してください。[カスタム セキュリティで保護されたメタデータ エンドポイント](../../../../docs/framework/wcf/samples/custom-secure-metadata-endpoint.md)です。 - [!INCLUDE[crabout](../../../../includes/crabout-md.md)]コードでは、メタデータの公開を参照してください[方法: サービスを使用してコードのメタデータを公開](../../../../docs/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-code.md)します。 メタデータを公開すると、クライアントが `?wsdl` クエリ文字列を使用した WS-Transfer GET 要求または HTTP/GET 要求によりメタデータを取得できるようになります。 コードが機能するかどうかを確認するために、基本的な [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスを作成します。 簡略化のため、次のコードに基本的な自己ホスト型サービスが用意されています。 + [!INCLUDE[crabout](../../../../includes/crabout-md.md)]コードでは、メタデータの公開を参照してください[する方法: サービスを使用してコードのメタデータを公開](../../../../docs/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-code.md)です。 メタデータを公開すると、クライアントが `?wsdl` クエリ文字列を使用した WS-Transfer GET 要求または HTTP/GET 要求によりメタデータを取得できるようになります。 コードが機能するかどうかを確認するために、基本的な [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスを作成します。 簡略化のため、次のコードに基本的な自己ホスト型サービスが用意されています。 ```csharp using System; @@ -95,28 +98,23 @@ namespace Metadata.Samples
- ``` ### アプリケーション構成ファイルを使用して WCF サービスのメタデータを公開するには -1. - `` 要素を閉じた後、App.config ファイル内に `` 要素を作成します。 +1. `` 要素を閉じた後、App.config ファイル内に `` 要素を作成します。 -2. - `` 要素内に `` 要素を追加します。 +2. `` 要素内に `` 要素を追加します。 -3. - ``要素に `` 要素を追加し、`name` 要素の `` 属性に値を指定します。 +3. ``要素に `` 要素を追加し、`name` 要素の `` 属性に値を指定します。 -4. - `` 要素を `` 要素に追加します。 `httpGetEnabled` 属性を `true` に設定し、`policyVersion` 属性を Policy15 に設定します。 `httpGetEnabled` により、サービスは HTTP GET 要求からのメタデータ要求に応答できるようになります。 `policyVersion` は、サービスに対して、WS-Policy 1.5 準拠でメタデータを生成するように指示します。 +4. `` 要素を `` 要素に追加します。 `httpGetEnabled` 属性を `true` に設定し、`policyVersion` 属性を Policy15 に設定します。 `httpGetEnabled` により、サービスは HTTP GET 要求からのメタデータ要求に応答できるようになります。 `policyVersion` は、サービスに対して、WS-Policy 1.5 準拠でメタデータを生成するように指示します。 @@ -182,7 +180,7 @@ namespace Metadata.Samples ### 既定のエンドポイントを使用するには -1. 既定のエンドポイントを使用するサービスのメタデータを構成するには、指定、 の構成ファイルの前の例のように、任意のエンドポイントを指定しません。 構成ファイルは、次のようになります。 +1. 既定のエンドポイントを使用するサービスでメタデータを構成するには、前の例のように、構成ファイルで を指定します。ただし、エンドポイントは指定しないでください。 構成ファイルは、次のようになります。 ```xml @@ -199,7 +197,7 @@ namespace Metadata.Samples ``` - サービスがあるため、 で、`httpGetEnabled`に設定`true`サービスが有効な場合、メタデータの公開、およびエンドポイントが明示的に追加されていないため、ランタイムは既定のエンドポイントを追加します。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]既定のエンドポイント、バインディング、および動作を参照してください[簡略化された構成](../../../../docs/framework/wcf/simplified-configuration.md)と[WCF サービスの構成を簡略化](../../../../docs/framework/wcf/samples/simplified-configuration-for-wcf-services.md)します。 + サービスの では `httpGetEnabled` が `true` に設定されているため、サービスではメタデータの公開が有効になっています。また、エンドポイントが明示的に追加されていないため、ランタイムは既定のエンドポイントを追加します。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]既定のエンドポイント、バインディング、および動作を参照してください[簡略化された構成](../../../../docs/framework/wcf/simplified-configuration.md)と[WCF サービスの構成を簡略化](../../../../docs/framework/wcf/samples/simplified-configuration-for-wcf-services.md)です。 ## 例 次のコード例は、基本的な [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスの実装と、このサービスのメタデータを公開する構成ファイルを示しています。 @@ -274,9 +272,9 @@ namespace Metadata.Samples ``` ## 関連項目 - - [方法: マネージ アプリケーションで WCF サービスをホスト](../../../../docs/framework/wcf/how-to-host-a-wcf-service-in-a-managed-application.md) - [自己ホストします。](../../../../docs/framework/wcf/samples/self-host.md) - [メタデータ アーキテクチャの概要](../../../../docs/framework/wcf/feature-details/metadata-architecture-overview.md) - [メタデータを使用します。](../../../../docs/framework/wcf/feature-details/using-metadata.md) - [方法: コードを使用して、サービスのメタデータを公開](../../../../docs/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-code.md) \ No newline at end of file + + [方法: マネージ アプリケーションで WCF サービスをホストする](../../../../docs/framework/wcf/how-to-host-a-wcf-service-in-a-managed-application.md) + [自己ホストします。](../../../../docs/framework/wcf/samples/self-host.md) + [メタデータ アーキテクチャの概要](../../../../docs/framework/wcf/feature-details/metadata-architecture-overview.md) + [メタデータを使用します。](../../../../docs/framework/wcf/feature-details/using-metadata.md) + [方法: コードを使用して、サービスのメタデータを公開](../../../../docs/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-code.md) diff --git a/docs/framework/wcf/feature-details/internet-unsecured-client-and-service.md b/docs/framework/wcf/feature-details/internet-unsecured-client-and-service.md index ae1da42636e..95915fb7b27 100644 --- a/docs/framework/wcf/feature-details/internet-unsecured-client-and-service.md +++ b/docs/framework/wcf/feature-details/internet-unsecured-client-and-service.md @@ -1,53 +1,59 @@ ---- -title: "セキュリティで保護されていないインターネット環境のクライアントとサービス | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "セキュリティで保護されていないインターネット環境のクライアントとサービス" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb ms.assetid: 97a10d79-3e7d-4bd1-9a99-fd9807fd70bc -caps.latest.revision: 17 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 17 ---- -# セキュリティで保護されていないインターネット環境のクライアントとサービス +caps.latest.revision: "17" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: cd7cc9da457424dede6f62ecefca8cee0d94fb88 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# セキュリティで保護されていないインターネット環境のクライアントとサービス セキュリティで保護されていないパブリックな [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] クライアントとサービスの例を次の図に示します。 - ![セキュリティで保護されていないインターネット クライアントとサービスのシナリオ](../../../../docs/framework/wcf/feature-details/media/publicunsecured.gif "publicUnsecured") + ![セキュリティ保護されていないインターネット クライアントとサービスのシナリオ](../../../../docs/framework/wcf/feature-details/media/publicunsecured.gif "publicUnsecured") -|特性|説明| -|--------|--------| +|特徴|説明| +|--------------------|-----------------| |セキュリティ モード|なし| -|トランスポート|HTTP| -|バインディング| \(コードを使用する場合\) または [\](../../../../docs/framework/configure-apps/file-schema/wcf/basichttpbinding.md) 要素 \(構成を使用する場合\)。| +|Transport|HTTP| +|バインド|コードでは、または[ \](../../../../docs/framework/configure-apps/file-schema/wcf/basichttpbinding.md)構成内の要素。| |相互運用性|既存の Web サービス クライアントとサービスを使用する| |認証|なし| |整合性|なし| |機密性|なし| -## サービス - 次のコードと構成は、別々に実行します。以下のいずれかを実行します。 +## サービス + 次のコードと構成は、別々に実行します。 次のいずれかの操作を行います。 - 構成を使用せずに、コードを使用してスタンドアロン サービスを作成します。 - 提供された構成を使用してサービスを作成しますが、エンドポイントを定義しません。 -### コード - 次のコードは、セキュリティで保護されないエンドポイントを作成する方法を示しています。既定では、 のセキュリティ モードは に設定されます。 +### コード + 次のコードは、セキュリティで保護されないエンドポイントを作成する方法を示しています。 既定では、 のセキュリティ モードは に設定されます。 - [!code-csharp[C_UnsecuredService#1](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_unsecuredservice/cs/source.cs#1)] + [!code-csharp[C_UnsecuredService#1](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_unsecuredservice/cs/source.cs#1)] [!code-vb[C_UnsecuredService#1](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_unsecuredservice/vb/source.vb#1)] -### サービス構成 +### サービス構成 次のコードは、構成を使用して同一のエンドポイントをセットアップします。 -``` +```xml @@ -71,26 +77,26 @@ caps.handback.revision: 17 ``` -## クライアント - 次のコードと構成は、別々に実行します。以下のいずれかの操作を行います。 +## クライアント + 次のコードと構成は、別々に実行します。 次のいずれかの操作を行います。 -- コード \(およびクライアント コード\) を使用してスタンドアロン クライアントを作成します。 +- コード (およびクライアント コード) を使用してスタンドアロン クライアントを作成します。 -- エンドポイント アドレスを定義しないクライアントを作成します。代わりに、引数として構成名を受け取るクライアント コンストラクターを使用します。次に例を示します。 +- エンドポイント アドレスを定義しないクライアントを作成します。 代わりに、引数として構成名を受け取るクライアント コンストラクターを使用します。 次に例を示します。 - [!code-csharp[C_SecurityScenarios#0](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_securityscenarios/cs/source.cs#0)] + [!code-csharp[C_SecurityScenarios#0](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_securityscenarios/cs/source.cs#0)] [!code-vb[C_SecurityScenarios#0](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_securityscenarios/vb/source.vb#0)] -### コード +### コード 次のコードは、セキュリティで保護されていないエンドポイントにアクセスする基本的な [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] クライアントを示します。 - [!code-csharp[C_UnsecuredClient#1](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_unsecuredclient/cs/source.cs#1)] + [!code-csharp[C_UnsecuredClient#1](../../../../samples/snippets/csharp/VS_Snippets_CFX/c_unsecuredclient/cs/source.cs#1)] [!code-vb[C_UnsecuredClient#1](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/c_unsecuredclient/vb/source.vb#1)] -### クライアントの設定 +### クライアント構成 クライアントを構成する場合のコード例を次に示します。 -``` +```xml @@ -113,7 +119,7 @@ caps.handback.revision: 17 ``` -## 参照 - [一般的なセキュリティ シナリオ](../../../../docs/framework/wcf/feature-details/common-security-scenarios.md) - [セキュリティの概要](../../../../docs/framework/wcf/feature-details/security-overview.md) - [Windows Server AppFabric のセキュリティ モデル](http://go.microsoft.com/fwlink/?LinkID=201279&clcid=0x409) \ No newline at end of file +## 関連項目 + [一般的なセキュリティ シナリオ](../../../../docs/framework/wcf/feature-details/common-security-scenarios.md) + [セキュリティの概要](../../../../docs/framework/wcf/feature-details/security-overview.md) + [Windows Server App Fabric のセキュリティ モデル](http://go.microsoft.com/fwlink/?LinkID=201279&clcid=0x409) diff --git a/docs/framework/wcf/feature-details/security.md b/docs/framework/wcf/feature-details/security.md index 8590329077e..cd62581c764 100644 --- a/docs/framework/wcf/feature-details/security.md +++ b/docs/framework/wcf/feature-details/security.md @@ -1,35 +1,38 @@ ---- -title: "Windows Communication Foundation セキュリティ | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "セキュリティ [WCF]" - - "Windows Communication Foundation, プログラミング" - - "Windows Communication Foundation, セキュリティ" +--- +title: "Windows Communication Foundation セキュリティ" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +helpviewer_keywords: +- Windows Communication Foundation, programming +- security [WCF] +- Windows Communication Foundation, security ms.assetid: 7ea87fcb-dcfb-4a4a-8b03-6b954575d45b -caps.latest.revision: 21 -author: "BrucePerlerMS" -ms.author: "bruceper" -manager: "mbaldwin" -caps.handback.revision: 21 ---- -# Windows Communication Foundation セキュリティ +caps.latest.revision: "21" +author: BrucePerlerMS +ms.author: bruceper +manager: mbaldwin +ms.openlocfilehash: 38f62a6ccc0c9291f3963173475f99d5800feb39 +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# Windows Communication Foundation セキュリティ このセクションの各トピックでは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] のセキュリティ機能、およびこれらの機能を使用してメッセージをセキュリティで保護する方法について説明します。 - Windows Server AppFabric およびセキュリティ[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[Windows Server AppFabric のセキュリティ モデル](http://go.microsoft.com/fwlink/?LinkID=201279&clcid=0x409)」を参照してください。 + [!INCLUDE[crabout](../../../../includes/crabout-md.md)]Windows Server AppFabric とセキュリティを参照してください[Windows Server AppFabric のセキュリティ モデル。](http://go.microsoft.com/fwlink/?LinkID=201279&clcid=0x409) -## このセクションの内容 +## このセクションの内容 [セキュリティの概要](../../../../docs/framework/wcf/feature-details/security-overview.md) [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] のセキュリティ機能について説明します。 - [セキュリティの概念](../../../../docs/framework/wcf/feature-details/security-concepts.md) + [セキュリティの基本概念](../../../../docs/framework/wcf/feature-details/security-concepts.md) [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] のセキュリティで使用される基本的な用語と概念について説明します。 [一般的なセキュリティ シナリオ](../../../../docs/framework/wcf/feature-details/common-security-scenarios.md) @@ -41,7 +44,7 @@ caps.handback.revision: 21 [バインディングとセキュリティ](../../../../docs/framework/wcf/feature-details/bindings-and-security.md) カスタム セキュリティ バインディングの作成方法を示すトピックなど、バインディングをセキュリティの観点から説明します。 - [サービスおよびクライアントのセキュリティ保護](../../../../docs/framework/wcf/feature-details/securing-services-and-clients.md) + [サービスとクライアントのセキュリティ保護](../../../../docs/framework/wcf/feature-details/securing-services-and-clients.md) [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] のセキュリティ機能を使用して、メッセージをセキュリティで保護する方法について説明します。 [認証](../../../../docs/framework/wcf/feature-details/authentication-in-wcf.md) @@ -59,15 +62,15 @@ caps.handback.revision: 21 [監査](../../../../docs/framework/wcf/feature-details/auditing-security-events.md) セキュリティ イベントを監査する方法について説明します。 - [セキュリティ ガイドラインとベスト プラクティス](../../../../docs/framework/wcf/feature-details/security-guidance-and-best-practices.md) + [セキュリティ ガイダンスとベスト プラクティス](../../../../docs/framework/wcf/feature-details/security-guidance-and-best-practices.md) セキュリティで保護された [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] アプリケーションの作成に関するガイドラインを示します。 -## 関連項目 +## 参照 -## 関連項目 +## 関連項目 [WCF 機能の詳細](../../../../docs/framework/wcf/feature-details/index.md) [基本的な WCF プログラミング](../../../../docs/framework/wcf/basic-wcf-programming.md) @@ -76,5 +79,5 @@ caps.handback.revision: 21 [概念](../../../../docs/framework/wcf/conceptual-overview.md) -## 参照 - [アプリケーションの構成](../../../../docs/framework/wcf/diagnostics/configuring-your-application.md) \ No newline at end of file +## 関連項目 + [アプリケーションを構成します。](../../../../docs/framework/wcf/diagnostics/configuring-your-application.md) diff --git a/docs/framework/wcf/feature-details/servicedescription-and-wsdl-reference.md b/docs/framework/wcf/feature-details/servicedescription-and-wsdl-reference.md index 1653cd2bc56..c216117bceb 100644 --- a/docs/framework/wcf/feature-details/servicedescription-and-wsdl-reference.md +++ b/docs/framework/wcf/feature-details/servicedescription-and-wsdl-reference.md @@ -1,162 +1,165 @@ ---- -title: "ServiceDescription と WSDL 参照 | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "ServiceDescription と WSDL 参照" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: eedc025d-abd9-46b1-bf3b-61d2d5c95fd6 -caps.latest.revision: 15 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 15 ---- -# ServiceDescription と WSDL 参照 -ここでは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] で行われる Web サービス記述言語 \(WSDL\) ドキュメントと インスタンスの間のマッピングについて説明します。 +caps.latest.revision: "15" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 26babd473ca78d6b55ada6c0505ec2f94214448b +ms.sourcegitcommit: bd1ef61f4bb794b25383d3d72e71041a5ced172e +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 10/18/2017 +--- +# ServiceDescription と WSDL 参照 +ここでは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] で行われる Web サービス記述言語 (WSDL) ドキュメントと インスタンスの間のマッピングについて説明します。 -## ServiceDescription から WSDL 1.1 へのマッピング - [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] を使用して、サービスの インスタンスから WSDL ドキュメントをエクスポートできます。 WSDL ドキュメントは、メタデータ エンドポイントを公開したときに自動的にサービスに対して生成されます。 +## ServiceDescription から WSDL 1.1 へのマッピング + [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] を使用して、サービスの インスタンスから WSDL ドキュメントをエクスポートできます。 WSDL ドキュメントは、メタデータ エンドポイントを公開したときに自動的にサービスに対して生成されます。 - また、`WsdlImporter` 型を使用して、WSDL ドキュメントから インスタンス、 インスタンス、および インスタンスをインポートできます。 + また、 型を使用して、WSDL ドキュメントから インスタンス、 インスタンス、および `WsdlImporter` インスタンスをインポートできます。 - [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] によってエクスポートされる WSDL ドキュメントは、外部の XML スキーマ ドキュメントから使用する XML スキーマ定義をインポートします。 データ型がサービスで使用するターゲット名前空間ごとに、個別の XML スキーマ ドキュメントがエクスポートされます。 同様に、サービス コントラクトが使用するターゲット名前空間ごとに、個別の WSDL ドキュメントがエクスポートされます。 + [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] によってエクスポートされる WSDL ドキュメントは、外部の XML スキーマ ドキュメントから使用する XML スキーマ定義をインポートします。 データ型がサービスで使用するターゲット名前空間ごとに、個別の XML スキーマ ドキュメントがエクスポートされます。 同様に、サービス コントラクトが使用するターゲット名前空間ごとに、個別の WSDL ドキュメントがエクスポートされます。 -### ServiceDescription - インスタンスは `wsdl:service` 要素にマップされます。 インスタンスは、それぞれが個別の `wsdl:port` 要素にマップされる インスタンスのコレクションを格納します。 +### ServiceDescription + インスタンスは `wsdl:service` 要素にマップされます。 インスタンスは、それぞれが個別の 要素にマップされる `wsdl:port` インスタンスのコレクションを格納します。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`Name`|サービスの `wsdl:service`\/@name 値| +|----------------|------------------| +|`Name`|`wsdl:service` /@nameサービスの値。| |`Namespace`|サービスの `wsdl:service` 定義の targetNamespace| |`Endpoints`|サービスの `wsdl:port` 定義| -### ServiceEndpoint - インスタンスは `wsdl:port` 要素にマップされます。 インスタンスは、アドレス、バインディング、およびコントラクトを格納します。 +### ServiceEndpoint + インスタンスは `wsdl:port` 要素にマップされます。 インスタンスは、アドレス、バインディング、およびコントラクトを格納します。 インターフェイスを実装するエンドポイント動作は、その動作が関連付けられているエンドポイントの `wsdl:port` 要素を変更できます。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`Name`|エンドポイントの `wsdl:port`\/@name 値およびエンドポイント バインディングの `wsdl:binding`\/@name 値| -|`Address`|エンドポイントの `wsdl:port` 定義のアドレス

アドレスの形式は、エンドポイントのトランスポートによって決まります。 たとえば、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] でサポートされるトランスポートの場合、SOAP アドレスまたはエンドポイント参照になります。| +|----------------|------------------| +|`Name`|`wsdl:port` /@nameエンドポイントの値と`wsdl:binding`/@nameエンドポイント バインディングの値。| +|`Address`|エンドポイントの `wsdl:port` 定義のアドレス

アドレスの形式は、エンドポイントのトランスポートによって決まります。 たとえば、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] でサポートされるトランスポートの場合、SOAP アドレスまたはエンドポイント参照になります。| |`Binding`|エンドポイントの `wsdl:binding` 定義

`wsdl:binding` 定義とは異なり、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] のバインディングはどのコントラクトにも関連付けられません。| |`Contract`|エンドポイントの `wsdl:portType` 定義| |`Behaviors`| インターフェイスを実装するエンドポイント動作は、エンドポイントの `wsdl:port` を変更できます。| -### バインディング - `ServiceEndpoint` インスタンスのバインディング インスタンスは、`wsdl:binding` 定義にマップされます。 特定の `wsdl:portType` 定義に関連付ける必要がある `wsdl:binding` 定義とは異なり、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] のバインディングは、どのコントラクトにも依存しません。 +### バインディング + `ServiceEndpoint` インスタンスのバインディング インスタンスは、`wsdl:binding` 定義にマップされます。 特定の `wsdl:binding` 定義に関連付ける必要がある `wsdl:portType` 定義とは異なり、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] のバインディングは、どのコントラクトにも依存しません。 - バインディングは、バインド要素のコレクションで構成されます。 各要素は、エンドポイントがクライアントと通信する方法の一部分を記述します。 また、バインディングには、エンドポイントの を示すための があります。 + バインディングは、バインド要素のコレクションで構成されます。 各要素は、エンドポイントがクライアントと通信する方法の一部分を記述します。 また、バインディングには、エンドポイントの を示すための があります。 |プロパティ|WSDL マッピング| -|-----------|----------------| +|----------------|------------------| |`Name`|エンドポイントの既定の名前で使用されます。この名前は、バインディング名にコントラクト名を追加し、アンダースコアで区切った形で表記されます。| -|`Namespace`|`wsdl:binding` 定義の `targetNamespace`。

インポートでは、WSDL ポートに関連付けられたポリシーがある場合、インポートされたバインディング名前空間は、`wsdl:port` 定義の `targetNamespace` にマップされます。| -|`BindingElementCollection` \(`CreateBindingElements`\(\) メソッドによって返されるプロパティとして\)|`wsdl:binding` 定義に対するさまざまなドメイン固有の拡張。通常は、ポリシー アサーション。| -|`MessageVersion`|エンドポイントの `EnvelopeVersion` および `AddressingVersion`。

`MessageVersion.None` が指定されている場合、WSDL バインディングは SOAP バインディングを格納せず、WSDL ポートは WS\-Addressing コンテンツを含みません。 この設定は、通常、Plain Old XML \(POX\) エンドポイントに対して使用されます。| +|`Namespace`|`targetNamespace` 定義の `wsdl:binding`。

インポートでは、WSDL ポートに関連付けられたポリシーがある場合、インポートされたバインディング名前空間は、`targetNamespace` 定義の `wsdl:port` にマップされます。| +|`BindingElementCollection` (`CreateBindingElements`() メソッドによって返されるプロパティとして)|`wsdl:binding` 定義に対するさまざまなドメイン固有の拡張。通常は、ポリシー アサーション。| +|`MessageVersion`|エンドポイントの `EnvelopeVersion` および `AddressingVersion`。

`MessageVersion.None` が指定されている場合、WSDL バインディングは SOAP バインディングを格納せず、WSDL ポートは WS-Addressing コンテンツを含みません。 この設定は、通常、Plain Old XML (POX) エンドポイントに対して使用されます。| -#### BindingElements +#### BindingElements エンドポイント バインディングのバインド要素は、ポリシー アサーションなど、`wsdl:binding` のさまざまな WSDL 拡張にマップされます。 - SOAP バインディングのトランスポート URI \(Uniform Resource Identifier\) は、バインディングの によって決まります。 + SOAP バインディングのトランスポート URI (Uniform Resource Identifier) は、バインディングの によって決まります。 -#### AddressingVersion - バインディングの `AddressingVersion` は、`wsd:port` で使用されるアドレス指定のバージョンにマップされます。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、SOAP 1.1 と SOAP 1.2 のアドレスおよび WS\-Addressing 08\/2004 と WS\-Addressing 1.0 のエンドポイント参照をサポートします。 +#### AddressingVersion + バインディングの `AddressingVersion` は、`wsd:port` で使用されるアドレス指定のバージョンにマップされます。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、SOAP 1.1 と SOAP 1.2 のアドレスおよび WS-Addressing 08/2004 と WS-Addressing 1.0 のエンドポイント参照をサポートします。 -#### EnvelopeVersion - バインディングの `EnvelopeVersion` は、`wsdl:binding` で使用される SOAP のバージョンにマップされます。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、SOAP 1.1 と SOAP 1.2 のバインディングをサポートします。 +#### EnvelopeVersion + バインディングの `EnvelopeVersion` は、`wsdl:binding` で使用される SOAP のバージョンにマップされます。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、SOAP 1.1 と SOAP 1.2 のバインディングをサポートします。 -### コントラクト - `ServiceEndpoint` インスタンスの インスタンスは、`wsdl:portType` にマップされます。 `ContractDescription` インスタンスは、特定のコントラクトのすべての操作を記述します。 +### コントラクト + インスタンスの `ServiceEndpoint` インスタンスは、`wsdl:portType` にマップされます。 `ContractDescription` インスタンスは、特定のコントラクトのすべての操作を記述します。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`Name`|コントラクトの `wsdl:portType`\/@name 値| +|----------------|------------------| +|`Name`|`wsdl:portType` /@nameコントラクトの値。| |`Namespace`|`wsdl:portType` 定義の targetNamespace| -|`SessionMode`|コントラクトの `wsdl:portType`\/@msc:usingSession 値。 この属性は、WSDL 1.1 用の [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] 拡張です。| +|`SessionMode`|`wsdl:portType` /@msc:usingSessionコントラクトの値。 この属性は、WSDL 1.1 用の [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] 拡張です。| |`Operations`|コントラクトの `wsdl:operation` 定義| -### 操作 - インスタンスは、`wsdl:portType`\/`wsdl:operation` にマップされます。 `OperationDescription` は、操作のメッセージを記述する `MessageDescription` インスタンスのコレクションを格納します。 +### オペレーション + インスタンスにマッピングする`wsdl:portType` /`wsdl:operation`です。 `OperationDescription` は、操作のメッセージを記述する `MessageDescription` インスタンスのコレクションを格納します。 - 主に、2 つの操作動作 `DataContractSerializerOperationBehavior` および `XmlSerializerOperationBehavior` が、`OperationDescription` を WSDL ドキュメントにマップする方法に関与しています。 + 主に、2 つの操作動作 `OperationDescription` および `DataContractSerializerOperationBehavior` が、`XmlSerializerOperationBehavior` を WSDL ドキュメントにマップする方法に関与しています。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`Name`|操作の `wsdl:portType`\/`wsdl:operation`\/@name 値| +|----------------|------------------| +|`Name`|`wsdl:portType` / `wsdl:operation` /@name操作の値。| |`ProtectionLevel`|この操作の `wsdl:binding/wsdl:operation` メッセージに関連付けられたセキュリティ ポリシーの保護アサーション| -|`IsInitiating`|操作の `wsdl:portType`\/`wsdl:operation`\/@msc:isInitiating 値。 この属性は、WSDL 1.1 用の [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] 拡張です。| -|`IsTerminating`|操作の `wsdl:portType`\/`wsdl:operation`\/@msc:isTerminating 値。 この属性は、WSDL 1.1 用の [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] 拡張です。| -|`Messages`|操作の `wsdl:portType`\/`wsdl:operation`\/`wsdl:input` メッセージおよび `wsdl:portType`\/`wsdl:operation`\/`wsdl:output` メッセージ| -|`Faults`|操作の `wsdl:portType`\/`wsdl:operation`\/`wsdl:fault` 定義| +|`IsInitiating`|`wsdl:portType` / `wsdl:operation` /@msc:isInitiating操作の値。 この属性は、WSDL 1.1 用の [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] 拡張です。| +|`IsTerminating`|`wsdl:portType` / `wsdl:operation` /@msc:isTerminating操作の値。 この属性は、WSDL 1.1 用の [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] 拡張です。| +|`Messages`|`wsdl:portType` / `wsdl:operation` / `wsdl:input`と`wsdl:portType` / `wsdl:operation` / `wsdl:output`操作のメッセージ。| +|`Faults`|`wsdl:portType` / `wsdl:operation` / `wsdl:fault`操作を定義します。| |`Behaviors`|`DataContractSerializerOperationBehavior` および `XmlSerializerOperationBehavior` は、操作バインディングおよび操作メッセージを扱います。| -#### DataContractSerializerOperationBehavior - 操作の `DataContractSerializerOperationBehavior` は、その操作の WSDL メッセージとバインディングをエクスポートする `IWsdlExportExtension` の実装です。 XML スキーマ型は、`XsdDataContractExporter` を使用してエクスポートされます。 また、`DataContractSerializerOperationBehavior` では、その操作に使用する使用方法、スタイル、およびスキーマ エクスポーターとインポーターを決定します。 +#### DataContractSerializerOperationBehavior + 操作の `DataContractSerializerOperationBehavior` は、その操作の WSDL メッセージとバインディングをエクスポートする `IWsdlExportExtension` の実装です。 XML スキーマ型は、`XsdDataContractExporter` を使用してエクスポートされます。 また、`DataContractSerializerOperationBehavior` では、その操作に使用する使用方法、スタイル、およびスキーマ エクスポーターとインポーターを決定します。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`DataContractFormatAttribute`|この属性の `Style` プロパティは、操作の `wsdl:binding`\/`wsdl:operation`\/`soap:operation`\/@style 値にマップされます。

`DataContractSerializerOperationBehavior` は、WSDL のスキーマ型のリテラル使用だけをサポートします。| +|----------------|------------------| +|`DataContractFormatAttribute`|`Style`この属性のプロパティにマップ、 `wsdl:binding` / `wsdl:operation` / `soap:operation` /@style操作の値。

`DataContractSerializerOperationBehavior` は、WSDL のスキーマ型のリテラル使用だけをサポートします。| -#### XmlSerializerOperationBehavior - 操作の `XmlSerializerOperationBehavior` は、その操作の WSDL メッセージとバインディングをエクスポートする `IWsdlExportExtension` の実装です。 XML スキーマ型は、`XmlSchemaExporter` を使用してエクスポートされます。 また、`XmlSerializerOperationBehavior` では、その操作に使用する使用方法、スタイル、およびスキーマ エクスポーターとインポーターを決定します。 +#### XmlSerializerOperationBehavior + 操作の `XmlSerializerOperationBehavior` は、その操作の WSDL メッセージとバインディングをエクスポートする `IWsdlExportExtension` の実装です。 XML スキーマ型は、`XmlSchemaExporter` を使用してエクスポートされます。 また、`XmlSerializerOperationBehavior` では、その操作に使用する使用方法、スタイル、およびスキーマ エクスポーターとインポーターを決定します。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`XmlSerializerFormatAttribute`|この属性の `Style` プロパティは、操作の `wsdl:binding`\/`wsdl:operation`\/`soap:operation`\/@style 値にマップされます。

この属性の `Use` プロパティは、操作のすべてのメッセージについて、`wsdl:binding`\/`wsdl:operation`\/`soap:operation`\/\*\/@use 値にマップされます。| +|----------------|------------------| +|`XmlSerializerFormatAttribute`|`Style`この属性のプロパティにマップ、 `wsdl:binding` / `wsdl:operation` / `soap:operation` /@style操作の値。

`Use`この属性のプロパティにマップ、 `wsdl:binding` / `wsdl:operation` / `soap:operation`/*/@use操作ですべてのメッセージの値。| -### \[メッセージ\] - `MessageDescription` インスタンスは、操作の `wsdl:portType`\/`wsdl:operation`\/`wsdl:input` メッセージまたは `wsdl:portType`\/`wsdl:operation`\/`wsdl:output` メッセージによって参照される `wsdl:message` にマップされます。 `MessageDescription` には、本文とヘッダーがあります。 +### メッセージ + A`MessageDescription`インスタンスにマッピングする`wsdl:message`によって参照される、 `wsdl:portType` / `wsdl:operation` / `wsdl:input`または`wsdl:portType` / `wsdl:operation` / `wsdl:output`操作でのメッセージ。 `MessageDescription` には、本文とヘッダーがあります。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`Action`|メッセージの SOAP アクションまたは WS\-Addressing アクション。

Action 文字列 "\*" を使用する操作は、WSDL では表示されません。| +|----------------|------------------| +|`Action`|メッセージの SOAP アクションまたは WS-Addressing アクション。

Action 文字列 "*" を使用する操作は、WSDL では表示されません。| |`Direction`|`MessageDirection.Input` は `wsdl:input` にマップされます。

`MessageDirection.Output` は `wsdl:output` にマップされます。| |`ProtectionLevel`|このメッセージの `wsdl:message` 定義に関連付けられたセキュリティ ポリシーの保護アサーション| |`Body`|メッセージのメッセージ本文| |`Headers`|メッセージのヘッダー| -|`ContractDescription.Name`, `OperationContract.Name`|エクスポートするときに、`wsdl:message`\/@name 値を派生するために使用されます。| +|`ContractDescription.Name`, `OperationContract.Name`|エクスポートで派生に使用される、 `wsdl:message` /@name値。| -#### メッセージ本文 - `MessageBodyDescription` インスタンスは、メッセージ本文の `wsdl:message`\/`wsdl:part` 定義にマップされます。 メッセージ本文は、ラップされている場合とベアの場合があります。 +#### メッセージ本文 + A`MessageBodyDescription`インスタンスにマッピング、 `wsdl:message` / `wsdl:part`メッセージの本文を定義します。 メッセージ本文は、ラップされている場合とベアの場合があります。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`WrapperName`|スタイルが RPC 以外の場合、`WrapperName` は、@name が "parameters" に設定された `wsdl:message`\/`wsdl:part` によって参照される要素名にマップされます。| -|`WrapperNamespace`|スタイルが RPC 以外の場合、`WrapperNamespace` は、@name が "parameters" に設定された `wsdl:message`\/`wsdl:part` の要素の名前空間にマップされます。| +|----------------|------------------| +|`WrapperName`|スタイルが RPC ではない場合、次に、`WrapperName`によって参照される要素名にマップ、 `wsdl:message` / `wsdl:part`で@name"parameters"に設定します。| +|`WrapperNamespace`|スタイルが RPC ではない場合、次に、`WrapperNamespace`の要素の名前空間にマップ、 `wsdl:message` / `wsdl:part`で@name"parameters"に設定します。| |`Parts`|このメッセージ本文のメッセージ部分| -|`ReturnValue`|ラッパー要素が存在する場合 \(ドキュメント ラップ スタイルまたは RPC スタイル\)、そのラッパー要素の子要素。存在しない場合、メッセージに最初に現れる `wsdl:message`\/`wsdl:part`。| +|`ReturnValue`|ラッパー要素が存在する場合 (ドキュメント ラップ スタイルまたは RPC スタイル)、それ以外の場合、ラッパー要素の子要素で、最初`wsdl:message` / `wsdl:part`メッセージにします。| -#### メッセージ部分 - `MessagePartDescription` インスタンスは、`wsdl:message`\/`wsdl:part` およびメッセージ部分が指す XML スキーマ型または要素にマップされます。 +#### メッセージ部分 + A`MessagePartDescription`インスタンスにマッピングする`wsdl:message` / `wsdl:part`と、XML スキーマ型またはメッセージ部分が指す要素。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`Name`|メッセージ部分の `wsd:message`\/`wsdl:part`\/@name 値およびメッセージ部分が指す要素の名前| +|----------------|------------------| +|`Name`|`wsd:message` / `wsdl:part` /@nameメッセージ部分であり、メッセージ部分が指す要素の名前の値。| |`Namespace`|メッセージ部分が指す要素の名前空間| -|`Index`|メッセージの `wsdl:message`\/`wsdl:part` のインデックス| -|`ProtectionLevel`|このメッセージ部分の `wsdl:message` 定義に関連付けられたセキュリティ ポリシーの保護アサーション。 ポリシーは、特定のメッセージ部分を指すためにパラメーター化されます。| +|`Index`|インデックス、 `wsdl:message` / `wsdl:part`メッセージ。| +|`ProtectionLevel`|このメッセージ部分の `wsdl:message` 定義に関連付けられたセキュリティ ポリシーの保護アサーション。 ポリシーは、特定のメッセージ部分を指すためにパラメーター化されます。| |`MessageType`|メッセージ部分が指す要素の XML スキーマ型| -#### メッセージ ヘッダー +#### メッセージ ヘッダー `MessageHeaderDescription` インスタンスは、メッセージ部分の `soap:header` バインディングにもマップされるメッセージ部分です。 -### エラー - `FaultDescription` インスタンスは、`wsdl:portType`\/`wsdl:operation`\/`wsdl:fault` 定義およびその関連する `wsdl:message` 定義にマップされます。 `wsdl:message` は、関連する WSDL ポートの種類と同じターゲット名前空間に追加されます。 `wsdl:message` には、`FaultDescription` インスタンスの `DefaultType` プロパティ値に相当する XML スキーマ要素を指す、"detail" という名前の 1 つのメッセージ部分があります。 +### エラー + A`FaultDescription`インスタンスにマッピングする`wsdl:portType` / `wsdl:operation` / `wsdl:fault`定義とそれに関連する`wsdl:message`定義します。 `wsdl:message` は、関連する WSDL ポートの種類と同じターゲット名前空間に追加されます。 `wsdl:message` には、`DefaultType` インスタンスの `FaultDescription` プロパティ値に相当する XML スキーマ要素を指す、"detail" という名前の 1 つのメッセージ部分があります。 |プロパティ|WSDL マッピング| -|-----------|----------------| -|`Name`|エラーの `wsdl:portType`\/`wsdl:operation`\/`wsdl:fault`\/@name 値| +|----------------|------------------| +|`Name`|`wsdl:portType` / `wsdl:operation` / `wsdl:fault` /@nameエラーの値。| |`Namespace`|エラー詳細メッセージ部分が指す XML スキーマ要素の名前空間| -|`Action`|エラーの SOAP アクションまたは WS\-Addressing アクション| +|`Action`|エラーの SOAP アクションまたは WS-Addressing アクション| |`ProtectionLevel`|このエラーの `wsdl:message` 定義に関連付けられたセキュリティ ポリシーの保護アサーション| |`DetailType`|詳細メッセージ部分が指す要素の XML スキーマ型| -|`Name, ContractDescription.Name, OperationDescription.Name,`|エラー メッセージの `wsdl:message`\/@name 値を派生するために使用されます。| +|`Name, ContractDescription.Name, OperationDescription.Name,`|派生に使用される、 `wsdl:message` /@nameエラー メッセージの値。| -## 参照 - \ No newline at end of file +## 関連項目 + diff --git a/docs/framework/wcf/feature-details/servicemodel-transaction-configuration.md b/docs/framework/wcf/feature-details/servicemodel-transaction-configuration.md index be46c2fc772..5305a1ff754 100644 --- a/docs/framework/wcf/feature-details/servicemodel-transaction-configuration.md +++ b/docs/framework/wcf/feature-details/servicemodel-transaction-configuration.md @@ -1,37 +1,39 @@ ---- -title: "ServiceModel トランザクションの構成 | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -helpviewer_keywords: - - "トランザクション [WCF], ServiceModel 構成" +--- +title: "ServiceModel トランザクションの構成" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +helpviewer_keywords: transactions [WCF], ServiceModel configuration ms.assetid: 5636067a-7fbd-4485-aaa2-8141c502acf3 -caps.latest.revision: 8 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 8 ---- -# ServiceModel トランザクションの構成 +caps.latest.revision: "8" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 54b07eff0b54816fe2d359a27f75b07ecb9f355a +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# ServiceModel トランザクションの構成 [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] では、サービスのトランザクションを構成するために、`transactionFlow`、`transactionProtocol`、および `transactionTimeout` という 3 つの属性が用意されています。 -## transactionFlow の構成 - [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] に用意されているほとんどの定義済みバインディングには、`transactionFlow` 属性と `transactionProtocol` 属性が含まれています。これらの属性を使用すると、特定のトランザクション フロー プロトコルを使用する特定のエンドポイントの受信トランザクションを受け入れるようにバインディングを構成できます。さらに、`transactionFlow` 要素とその `transactionProtocol` 属性を使用して、ユーザー独自のカスタム バインディングを構築できます。構成要素の設定[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[\](../../../../docs/framework/misc/binding.md)」および「[WCF 構成スキーマ](../../../../docs/framework/configure-apps/file-schema/wcf/index.md)」を参照してください。 +## transactionFlow の構成 + [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] に用意されているほとんどの定義済みバインディングには、`transactionFlow` 属性と `transactionProtocol` 属性が含まれています。これらの属性を使用すると、特定のトランザクション フロー プロトコルを使用する特定のエンドポイントの受信トランザクションを受け入れるようにバインディングを構成できます。 さらに、`transactionFlow` 要素とその `transactionProtocol` 属性を使用して、ユーザー独自のカスタム バインディングを構築できます。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]構成要素を設定するには、表示[\<バインディング >](../../../../docs/framework/misc/binding.md)と[WCF 構成スキーマ](../../../../docs/framework/configure-apps/file-schema/wcf/index.md)です。 `transactionFlow` 属性は、バインディングを使用するサービス エンドポイントに対してトランザクション フローを有効にするかどうかを指定します。 -## transactionProtocol の構成 +## transactionProtocol の構成 `transactionProtocol` 属性は、バインディングを使用するサービス エンドポイントで使用されるトランザクション プロトコルを指定します。 - 以下に、指定したバインディングがトランザクション フローをサポートし、WS\-AtomicTransaction プロトコルを使用するように構成する構成セクションの例を示します。 + 以下に、指定したバインディングがトランザクション フローをサポートし、WS-AtomicTransaction プロトコルを使用するように構成する構成セクションの例を示します。 -``` +```xml ``` -## transactionTimeout の構成 - [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスの `transactionTimeout` 属性は、構成ファイルの `behavior` 要素内で構成できます。次のコードでは、この設定方法について説明します。 +## transactionTimeout の構成 + `transactionTimeout` サービスの [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] 属性は、構成ファイルの `behavior` 要素内で構成できます。 次のコードでは、この設定方法について説明します。 -``` +```xml @@ -61,14 +63,14 @@ caps.handback.revision: 8 ``` - `transactionTimeout` 属性は、サービスで作成された新しいトランザクションを完了させる期間を指定します。この属性は、新しいトランザクションを確立するすべての操作の タイムアウトとして使用され、 が適用されている場合、 プロパティは `true` に設定されます。 + `transactionTimeout` 属性は、サービスで作成された新しいトランザクションを完了させる期間を指定します。 この属性は、新しいトランザクションを確立するすべての操作の タイムアウトとして使用され、 が適用されている場合、 プロパティは `true` に設定されます。 このタイムアウトは、2 フェーズ コミット プロトコルにおける、トランザクションの作成からフェーズ 1 の完了までの期間を指定します。 - この属性を `service` 構成セクション内に設定する場合は、対応するサービスの 1 つ以上のメソッドで、 プロパティが `true` に設定された を適用する必要があります。 + この属性を `service` 構成セクション内に設定する場合は、対応するサービスの 1 つ以上のメソッドで、 プロパティが に設定された `true` を適用する必要があります。 使用されるタイムアウト値は常に、この `transactionTimeout` 構成設定と プロパティの小さい方の値になります。 -## 参照 - [\](../../../../docs/framework/misc/binding.md) - [WCF 構成スキーマ](../../../../docs/framework/configure-apps/file-schema/wcf/index.md) \ No newline at end of file +## 関連項目 + [\<バインド >](../../../../docs/framework/misc/binding.md) + [WCF 構成スキーマ](../../../../docs/framework/configure-apps/file-schema/wcf/index.md) diff --git a/docs/framework/wcf/feature-details/using-message-contracts.md b/docs/framework/wcf/feature-details/using-message-contracts.md index cf90efe3505..f8a66eebcc0 100644 --- a/docs/framework/wcf/feature-details/using-message-contracts.md +++ b/docs/framework/wcf/feature-details/using-message-contracts.md @@ -1,35 +1,37 @@ ---- -title: "メッセージ コントラクトの使用 | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" -dev_langs: - - "VB" - - "CSharp" -helpviewer_keywords: - - "メッセージ コントラクト [WCF]" +--- +title: "メッセージ コントラクトの使用" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article +dev_langs: +- csharp +- vb +helpviewer_keywords: message contracts [WCF] ms.assetid: 1e19c64a-ae84-4c2f-9155-91c54a77c249 -caps.latest.revision: 46 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 46 ---- -# メッセージ コントラクトの使用 -一般に、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] アプリケーションを構築するときには、開発者はデータ構造とシリアル化の問題には細心の注意を払いますが、データを送信するメッセージの構造について懸念する必要はありません。このようなアプリケーションでは、パラメーターまたは戻り値用にデータ コントラクトを作成するのは簡単です \([!INCLUDE[crdefault](../../../../includes/crdefault-md.md)][サービス コントラクトでのデータ転送の指定](../../../../docs/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts.md).\) - - ただし、SOAP メッセージの構造を完全に制御することがメッセージの内容の制御と同様に重要となる場合があります。これが特に当てはまるのは、相互運用性が重要である場合、具体的にはメッセージまたはメッセージ部分のレベルでセキュリティの問題を制御する場合です。このような場合、必要とされる正確な SOAP メッセージの構造を指定できる、*メッセージ コントラクト*を作成できます。 +caps.latest.revision: "46" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: 521393aabb9d5674b00194926cb67071cc4566bc +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# メッセージ コントラクトの使用 +一般に、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] アプリケーションを構築するときには、開発者はデータ構造とシリアル化の問題には細心の注意を払いますが、データを送信するメッセージ構造について懸念する必要はありません。 このようなアプリケーションでは、パラメーターまたは戻り値用にデータ コントラクトを作成するのは簡単です ([!INCLUDE[crdefault](../../../../includes/crdefault-md.md)] [サービス コントラクトのデータ転送を指定する](../../../../docs/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts.md))。 + + ただし、SOAP メッセージの構造を完全に制御することがメッセージの内容の制御と同様に重要となる場合があります。 これが特に当てはまるのは、相互運用性が重要である場合、具体的にはメッセージまたはメッセージ部分のレベルでセキュリティの問題を制御する場合です。 このような場合は、作成することができます、*メッセージ コントラクト*必要正確な SOAP メッセージの構造を指定することができます。 ここでは、メッセージ コントラクトの各種属性を使用して、ユーザー操作に専用のメッセージ コントラクトを作成する方法について説明します。 -## 処理におけるメッセージ コントラクトの使用 - [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] は、*"リモート プロシージャ コール \(RPC: Remote Procedure Call\) スタイル"*、または *"メッセージング スタイル"* でモデル化された操作をサポートします。RPC スタイルの操作では、シリアル化可能な任意の型を使用できます。複数のパラメーター、`ref` パラメーターと `out` パラメーターなど、ローカル呼び出しで使用できる機能が用意されています。このスタイルでは、選択したシリアル化の形式によって基になるメッセージのデータ構造が制御されますが、操作をサポートするために、メッセージは [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] ランタイムによって作成されます。これにより、SOAP や SOAP メッセージに不慣れな開発者でも、サービス アプリケーションを迅速かつ容易に作成し、使用できます。 +## 処理におけるメッセージ コントラクトの使用 + [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)]いずれかでモデル化された操作をサポートする、*リモート プロシージャ コール (RPC) スタイル*または*メッセージング スタイル*です。 RPC スタイルの操作では、シリアル化可能な任意の型を使用できます。複数のパラメーター、`ref` パラメーターと `out` パラメーターなど、ローカル呼び出しで使用できる機能を利用できます。 このスタイルでは、選択したシリアル化の形式によって基になるメッセージのデータ構造が制御されます。また、操作をサポートするために、メッセージは [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] ランタイムによって作成されます。 これにより、SOAP や SOAP メッセージに不慣れな開発者でも、サービス アプリケーションを迅速かつ容易に作成し、使用できます。 RPC スタイルでモデル化されたサービス操作のコード例を次に示します。 @@ -38,13 +40,13 @@ caps.handback.revision: 46 public BankingTransactionResponse PostBankingTransaction(BankingTransaction bt); ``` - 通常は、データ コントラクトだけでメッセージのスキーマを定義することができます。たとえば、前述の例では、`BankingTransaction` と `BankingTransactionResponse` にデータ コントラクトがあれば、ほとんどのアプリケーションで基になる SOAP メッセージの内容を定義できます。データ コントラクト[!INCLUDE[crabout](../../../../includes/crabout-md.md)]、「[データ コントラクトの使用](../../../../docs/framework/wcf/feature-details/using-data-contracts.md)」を参照してください。 + 通常は、データ コントラクトだけでメッセージのスキーマを定義することができます。 たとえば、前の例では、`BankingTransaction` と `BankingTransactionResponse` にデータ コントラクトがあれば、ほとんどのアプリケーションで基になる SOAP メッセージの内容を定義できます。 [!INCLUDE[crabout](../../../../includes/crabout-md.md)]データ コントラクトを参照してください[を使用してデータ コントラクト](../../../../docs/framework/wcf/feature-details/using-data-contracts.md)です。 - ただし、場合によっては、SOAP メッセージの構造がネットワーク経由でどのように転送されるかを厳密に制御する必要があります。最も一般的なシナリオは、カスタム SOAP ヘッダーの挿入です。もう 1 つの一般的なシナリオは、メッセージのヘッダーと本文のセキュリティ プロパティを定義すること、つまり、これらの要素にデジタル署名し、要素を暗号化するかどうかを決定することです。最後に、一部のサードパーティの SOAP スタックでは、メッセージが特定の形式である必要があります。この制御は、メッセージング スタイルの操作によって行うことができます。 + ただし、場合によっては、SOAP メッセージの構造がネットワーク経由でどのように転送されるかを厳密に制御する必要があります。 最も一般的なシナリオは、カスタム SOAP ヘッダーの挿入です。 もう 1 つの一般的なシナリオは、メッセージのヘッダーと本文のセキュリティ プロパティを定義すること、つまり、これらの要素にデジタル署名し、要素を暗号化するかどうかを決定することです。 最後に、一部のサードパーティの SOAP スタックでは、メッセージが特定の形式である必要があります。 この制御は、メッセージング スタイルの操作によって行うことができます。 - メッセージング スタイルの操作には、最大で 1 つのパラメーターと 1 つの戻り値があります。これらはいずれもメッセージ型です。つまり、パラメーターと戻り値は、指定された SOAP メッセージ構造に直接シリアル化されます。これは、 型、または 型としてマークされた任意の型を使用できます。次のコード例は前の RPC スタイルと同様の操作を示していますが、この例ではメッセージング スタイルを使用しています。 + メッセージング スタイルの操作には、最大で 1 つのパラメーターと 1 つの戻り値があります。これらはいずれもメッセージ型です。つまり、パラメーターと戻り値は、指定された SOAP メッセージ構造に直接シリアル化されます。 これは、 型、または 型としてマークされた任意の型を使用できます。 次のコード例は前の RPC スタイルと同様の操作を示していますが、この例ではメッセージング スタイルを使用しています。 - たとえば、`BankingTransaction` と `BankingTransactionResponse` がいずれもメッセージ コントラクトである型である場合、次の操作のコードは有効です。 + たとえば、`BankingTransaction` と `BankingTransactionResponse` がいずれもメッセージ コントラクト型である場合、次の操作のコードは有効です。 ```csharp [OperationContract] @@ -66,12 +68,12 @@ void Reconcile(BankingTransaction bt1, BankingTransaction bt2); // Invalid, there is more than one parameter. ``` - メッセージ コントラクト型を含み、有効なパターンのいずれにも従わないすべての操作に対して例外がスローされます。もちろん、メッセージ コントラクト型を含まない処理にはこのような制限はありません。 + メッセージ コントラクト型を含み、有効なパターンのいずれにも従わないすべての操作に対して例外がスローされます。 もちろん、メッセージ コントラクト型を含まない処理にはこのような制限はありません。 1 つの型にメッセージ コントラクトとデータ コントラクトの両方が含まれる場合は、処理でその型が使用されたときにはメッセージ コントラクトだけが考慮されます。 -## メッセージ コントラクトの定義 - 型のメッセージ コントラクトを定義する \(つまり、型と SOAP エンベロープ間のマッピングを定義する\) には、 を型に適用します。次に、SOAP ヘッダーにする型のメンバーに を適用し、メッセージの SOAP 本文の一部にするメンバーに を適用します。 +## メッセージ コントラクトの定義 + 型のメッセージ コントラクトを定義する (つまり、型と SOAP エンベロープ間のマッピングを定義する) には、 を型に適用します。 次に、SOAP ヘッダーにする型のメンバーに を適用し、メッセージの SOAP 本文の一部にするメンバーに を適用します。 メッセージ コントラクトの使用例を次のコードに示します。 @@ -103,24 +105,23 @@ public class BankingTransaction - ``` - `operation` と `transactionDate` が SOAP ヘッダーとして表示され、SOAP 本体は `sourceAccount`、`targetAccount`、および `amount` を含むラッパー要素 `BankingTransaction` から成ることに注意してください。 + `operation` と `transactionDate` が SOAP ヘッダーとして表示され、SOAP 本体は `BankingTransaction`、`sourceAccount`、および `targetAccount` を含むラッパー要素 `amount` から成ることに注意してください。 パブリック、プライベート、保護、または内部のいずれであるかに関係なく、 は、すべてのフィールド、プロパティ、およびイベントに適用できます。 - を使用すると、SOAP メッセージの本文のラッパー要素の名前を制御する WrapperName および WrapperNamespace 属性を指定できます。既定では、メッセージ コントラクト型の名前はラッパー用に使用され、メッセージ コントラクトが定義されている名前空間 \(`http://tempuri.org/`\) は既定の名前空間として使用されます。 + を使用すると、SOAP メッセージの本文のラッパー要素の名前を制御する WrapperName および WrapperNamespace 属性を指定できます。 ラッパーと、メッセージ コントラクトが定義されている名前空間の既定のメッセージ コントラクトの名前で型が使用される`HYPERLINK "http://tempuri.org/" http://tempuri.org/`は既定の名前空間として使用します。 > [!NOTE] -> 属性は、メッセージ コントラクトでは無視されます。 が必要な場合は、対象のメッセージ コントラクトを使用している処理でそれを設定します。 +> 属性は、メッセージ コントラクトでは無視されます。 が必要な場合は、対象のメッセージ コントラクトを使用している処理でそれを設定します。 -## ヘッダー名、本文名、および名前空間の制御 +## ヘッダー名、本文名、および名前空間の制御 メッセージ コントラクトの SOAP 表現では、各ヘッダーと本文の各部分が名前と名前空間を持つ XML 要素にマップされます。 既定では、名前空間はメッセージが参加しているサービス コントラクトの名前空間と同じであり、その名前は 属性または 属性が割り当てられたメンバー名によって決定されます。 - \( 属性と 属性の親クラスの\) および を操作することによって、これらの既定値を変更できます。 + ( 属性と 属性の親クラスの) および を操作することによって、これらの既定値を変更できます。 次のコード例のクラスについて考えてみます。 @@ -132,12 +133,11 @@ public class BankingTransaction [MessageHeader(Namespace="http://schemas.contoso.com/auditing/2005")] public bool IsAudited; [MessageBodyMember(Name="transactionData")] public BankingTransactionData theData; } - ``` - この例では、`IsAudited` ヘッダーがコードで指定された名前空間に存在し、`theData` メンバーを表す本文が `transactionData` という名前の XML 要素によって表現されます。次に、このメッセージ コントラクト用に生成された XML を示します。 + この例では、`IsAudited` ヘッダーがコードで指定された名前空間に存在し、`theData` メンバーを表す本文が `transactionData` という名前の XML 要素によって表現されます。 次に、このメッセージ コントラクト用に生成された XML を示します。 -``` +```xml false @@ -149,31 +149,30 @@ public class BankingTransaction - ``` -## SOAP 本文の各部分のラップの制御 - SOAP 本文は、既定で、ラップされた要素内にシリアル化されます。たとえば、`HelloGreetingMessage` メッセージのメッセージ コントラクトに含まれる 型の名前から生成される `HelloGreetingMessage` ラッパー要素を次のコードに示します。 +## SOAP 本文の各部分のラップの制御 + SOAP 本文は、既定で、ラップされた要素内にシリアル化されます。 たとえば、`HelloGreetingMessage` メッセージのメッセージ コントラクトに含まれる 型の名前から生成される `HelloGreetingMessage` ラッパー要素を次のコードに示します。 - [!code-csharp[MessageHeaderAttribute#3](../../../../samples/snippets/csharp/VS_Snippets_CFX/messageheaderattribute/cs/services.cs#3)] + [!code-csharp[MessageHeaderAttribute#3](../../../../samples/snippets/csharp/VS_Snippets_CFX/messageheaderattribute/cs/services.cs#3)] [!code-vb[MessageHeaderAttribute#3](../../../../samples/snippets/visualbasic/VS_Snippets_CFX/messageheaderattribute/vb/services.vb#3)] - ラッパー要素を抑制するには、 プロパティを `false` に設定します。ラッパー要素の名前と名前空間を制御するには、 プロパティと プロパティを使用します。 + ラッパー要素を抑制するには、 プロパティを `false` に設定します。 ラッパー要素の名前と名前空間を制御するには、 プロパティと プロパティを使用します。 > [!NOTE] -> ラップされていないメッセージにメッセージ本文の複数の部分を含めることは、WS\-I Basic Profile 1.1 規格に反するため、新しいメッセージ コントラクトを設計する場合はお勧めできません。ただし、特定の相互運用シナリオでは、複数のラップされていないメッセージ本文が必要な場合もあります。1 つのメッセージ本文で複数のデータを転送する場合は、既定の \(ラップされた\) モードを使用することをお勧めします。ラップされていないメッセージで複数のメッセージ ヘッダーを使用しても、何の問題もありません。 +> ラップされていないメッセージにメッセージ本文の複数の部分を含めることは、WS-I Basic Profile 1.1 規格に反するため、新しいメッセージ コントラクトを設計する場合はお勧めできません。 ただし、特定の相互運用シナリオでは、複数のラップされていないメッセージ本文が必要な場合もあります。 1 つのメッセージ本文で複数のデータを転送する場合は、既定の (ラップされた) モードを使用することをお勧めします。 ラップされていないメッセージで複数のメッセージ ヘッダーを使用しても、何の問題もありません。 -## メッセージ コントラクト内部でのカスタム型の使用 - メッセージが使用されるサービス コントラクト用に選択されたシリアル化エンジンを使用して、個々のメッセージ ヘッダーとメッセージ本文がシリアル化されます \(XML に変換されます\)。既定のシリアル化エンジンである `XmlFormatter` は、データ コントラクトを持つ任意の型を \( を持つことによって\) 明示的に処理することも、\(プリミティブ型にしたり、 を持ったりすることなどによって\) 暗黙的に処理することもできます。[!INCLUDE[crdefault](../../../../includes/crdefault-md.md)][データ コントラクトの使用](../../../../docs/framework/wcf/feature-details/using-data-contracts.md). +## メッセージ コントラクト内部でのカスタム型の使用 + メッセージが使用されるサービス コントラクト用に選択されたシリアル化エンジンを使用して、個々のメッセージ ヘッダーとメッセージ本文がシリアル化されます (XML に変換されます)。 既定のシリアル化エンジンである `XmlFormatter` は、データ コントラクトを持つ任意の型を ( を持つことによって) 明示的に処理することも、(プリミティブ型にしたり、 を持ったりすることなどによって) 暗黙的に処理することもできます。 [!INCLUDE[crdefault](../../../../includes/crdefault-md.md)][データ コントラクトを使用して](../../../../docs/framework/wcf/feature-details/using-data-contracts.md)です。 - 前の例では、`Operation` 型と `BankingTransactionData` 型は、データ コントラクトを持つ必要があります。また、 がプリミティブである \(したがって、暗黙のデータ コントラクトを持つ\) ため、`transactionDate` はシリアル化可能です。 + 前の例では、`Operation` 型と `BankingTransactionData` 型は、データ コントラクトを持つ必要があります。また、`transactionDate` がプリミティブである (したがって、暗黙のデータ コントラクトを持つ) ため、 はシリアル化可能です。 - ただし、別のシリアル化エンジンである `XmlSerializer` に切り替えることができます。このような切り替えを行う場合は、メッセージ ヘッダーと本文の各部分に使用されているすべての型が `XmlSerializer` を使用してシリアル化可能であることを確認する必要があります。 + ただし、別のシリアル化エンジンである `XmlSerializer` に切り替えることができます。 このような切り替えを行う場合は、メッセージ ヘッダーと本文の各部分に使用されているすべての型が `XmlSerializer` を使用してシリアル化可能であることを確認する必要があります。 -## メッセージ コントラクト内部での配列の使用 +## メッセージ コントラクト内部での配列の使用 メッセージ コントラクトでは、反復要素の配列を 2 とおりの方法で使用できます。 - 最初の方法は、配列上で または を直接使用する方法です。この場合は、配列全体が複数の子要素を含む 1 つの要素 \(つまり、1 つのヘッダーまたは 1 つの本文\) としてシリアル化されます。次の例のクラスについて考えてみます。 + 最初の方法は、配列上で または を直接使用する方法です。 この場合は、配列全体が複数の子要素を含む 1 つの要素 (つまり、1 つのヘッダーまたは 1 つの本文) としてシリアル化されます。 次の例のクラスについて考えてみます。 ```csharp [MessageContract] @@ -187,7 +186,7 @@ public class BankingDepositLog これは、次のような SOAP ヘッダーになります。 -``` +```xml 3 @@ -199,10 +198,9 @@ public class BankingDepositLog ``` - もう 1 つの方法は、 を使用する方法です。この場合、各配列要素が個別にシリアル化されるため、次のように配列要素ごとに 1 つのヘッダーが付加されます。 - -``` + もう 1 つの方法は、 を使用する方法です。 この場合、各配列要素が個別にシリアル化されるため、次のように配列要素ごとに 1 つのヘッダーが付加されます。 +```xml 3 Record1 Record2 @@ -212,25 +210,25 @@ public class BankingDepositLog 配列エントリの既定の名前は、 属性が適用されたメンバーの名前になります。 - 属性は、 から継承されます。この属性は、非配列属性と同じ機能セットを持ちます。たとえば、単一のヘッダーに設定するのと同様に、ヘッダーの配列に順序、名前、および名前空間を設定できます。配列で `Order` プロパティを使用すると、その配列全体に適用されます。 + 属性は、 から継承されます。 この属性は、非配列属性と同じ機能セットを持ちます。たとえば、単一のヘッダーに設定するのと同様に、ヘッダーの配列に順序、名前、および名前空間を設定できます。 配列で `Order` プロパティを使用すると、その配列全体に適用されます。 を適用できるのは配列だけであり、コレクションには適用できません。 -## メッセージ コントラクトでのバイト配列の使用 - バイト配列を非配列属性 \(\) で使用した場合は、配列としてではなく、生成された XML 内で Base64 でエンコードされたデータとして表現される特殊なプリミティブ型として扱われます。 +## メッセージ コントラクトでのバイト配列の使用 + バイト配列を非配列属性 () で使用した場合は、配列としてではなく、生成された XML 内で Base64 でエンコードされたデータとして表現される特殊なプリミティブ型として扱われます。 - 配列属性でバイト配列を使用した場合、結果は使用しているシリアライザーによって異なります。既定のシリアライザーでは、配列が個々のバイト エントリとして表されます。ただし、\(サービス コントラクトの を使用して\) `XmlSerializer` を選択した場合は、配列属性と非配列属性のどちらを使用しているかに関係なく、バイト配列は Base64 データとして扱われます。 + 配列属性でバイト配列を使用した場合、結果は使用しているシリアライザーによって異なります。 既定のシリアライザーでは、配列が個々のバイト エントリとして表されます。 ただし、(サービス コントラクトの `XmlSerializer` を使用して) を選択した場合は、配列属性と非配列属性のどちらを使用しているかに関係なく、バイト配列は Base64 データとして扱われます。 -## メッセージの一部の署名と暗号化 +## メッセージの一部の署名と暗号化 メッセージ コントラクトでは、メッセージのヘッダーまたは本文にデジタル署名し、暗号化するかどうかを示すことができます。 - この操作は、 属性と 属性の プロパティを設定することによって実行されます。このプロパティは、 型の列挙体であり、 \(暗号化と署名を行わない\)、 \(デジタル署名だけを行う\)、または \(暗号化とデジタル署名の両方を行う\) に設定できます。既定値は です。 + この操作は、 属性と 属性の プロパティを設定することによって実行されます。 このプロパティは、 型の列挙体であり、 (暗号化と署名を行わない)、 (デジタル署名だけを行う)、または (暗号化とデジタル署名の両方を行う) に設定できます。 既定値は、 です。 - これらのセキュリティ機能を使用するには、バインディングと動作を適切に構成する必要があります。適切な構成を行わずにこれらのセキュリティ機能を使用した場合 \(資格情報を指定せずにメッセージに署名しようとした場合など\)、検証時に例外がスローされます。 + これらのセキュリティ機能を使用するには、バインディングと動作を適切に構成する必要があります。 適切な構成を行わずにこれらのセキュリティ機能を使用した場合 (資格情報を指定せずにメッセージに署名しようとした場合など)、検証時に例外がスローされます。 メッセージ ヘッダーの場合、ヘッダーごとに保護レベルが設定されます。 - メッセージ本文の各部分の場合は、保護レベルを "最小保護レベル" と見なすことができます。本文には、その数に関係なく 1 つの保護レベルしか設定できません。本文の保護レベルは、本文の全部分の中の最も高い プロパティの設定によって決定されます。ただし、本文の各部分の保護レベルを必要最小限の保護レベルに設定することをお勧めします。 + メッセージ本文の各部分の場合は、保護レベルを "最小保護レベル" と見なすことができます。 本文には、その数に関係なく 1 つの保護レベルしか設定できません。 本文の保護レベルは、本文の全部分の中の最も高い プロパティの設定によって決定されます。 ただし、本文の各部分の保護レベルを必要最小限の保護レベルに設定することをお勧めします。 次のコード例のクラスについて考えてみます。 @@ -247,23 +245,23 @@ public class PatientRecord } ``` - この例では、`recordID` ヘッダーは保護されず、`patientName` は署名され、`SSN` は暗号化および署名されます。本文の comments と diagnosis の各部分では低い保護レベルを指定していても、本文の少なくとも 1 つの部分 \(`medicalHistory`\) に が適用されているため、メッセージ本文全体が暗号化され、署名されます。 + この例では、`recordID` ヘッダーは保護されず、`patientName` は署名`signed`され、`SSN` は暗号化および署名されます。 本文の comments と diagnosis の各部分では低い保護レベルを指定していても、本文の少なくとも 1 つの部分 (`medicalHistory`) に が適用されているため、メッセージ本文全体が暗号化され、署名されます。 -## SOAP アクション - SOAP 標準と関連する Web サービス標準では、送信されるすべての SOAP メッセージに設定可能な `Action` という名前のプロパティが定義されます。このプロパティの値は、操作の プロパティと プロパティによって制御されます。 +## SOAP アクション + SOAP 標準と関連する Web サービス標準では、送信されるすべての SOAP メッセージに設定可能な `Action` という名前のプロパティが定義されます。 このプロパティの値は、操作の プロパティと プロパティによって制御されます。 -## SOAP ヘッダーの属性 +## SOAP ヘッダーの属性 SOAP 標準では、ヘッダーに設定可能な次の属性が定義されます。 -- `Actor/Role` \(SOAP 1.1 では `Actor`、SOAP 1.2 では `Role`\) +- `Actor/Role` (SOAP 1.1 では `Actor`、SOAP 1.2 では `Role`) - `MustUnderstand` - `Relay` - `Actor` 属性または `Role` 属性は、指定のヘッダーが対象とするノードの URI \(Uniform Resource Identifier\) を指定します。`MustUnderstand` 属性は、ヘッダー処理ノードがヘッダーを認識する必要があるかどうかを指定します。`Relay` 属性は、ダウンストリーム ノードにヘッダーを中継する必要があるかどうかを指定します。[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、`MustUnderstand` 属性を除いて \(このトピックの後の方の「メッセージ コントラクトのバージョン管理」セクションで指定\)、受信メッセージに対してこれらの属性の処理を実行しません。ただし、後述するように、必要に応じてこれらの属性を読み書きすることができます。 + `Actor` 属性または `Role` 属性は、指定のヘッダーが対象とするノードの URI (Uniform Resource Identifier) を指定します。 `MustUnderstand` 属性は、ヘッダー処理ノードがヘッダーを認識する必要があるかどうかを指定します。 `Relay` 属性は、ダウンストリーム ノードにヘッダーを中継する必要があるかどうかを指定します。 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、`MustUnderstand` 属性を除いて (このトピックの後半の「メッセージ コントラクトのバージョン管理」セクションで指定)、受信メッセージに対してこれらの属性の処理を実行しません。 ただし、後述するように、必要に応じてこれらの属性を読み書きすることができます。 - 既定では、メッセージの送信時にこれらの属性は出力されません。これは、2 とおりの方法で変更できます。1 つ目の方法として、次のコード例に示すように、、および の各プロパティを変更することによって、属性を必要な値に静的に設定できます \(`Role` プロパティが存在しないことに注意してください。SOAP 1.2 を使用している場合は、 プロパティを設定すると `Role` 属性が出力されます\)。 + 既定では、メッセージの送信時にこれらの属性は出力されません。 これは、2 とおりの方法で変更できます。 1 つ目の方法として、次のコード例に示すように、、および の各プロパティを変更することによって、属性を必要な値に静的に設定できます (`Role` プロパティが存在しないことに注意してください。SOAP 1.2 を使用している場合は、 プロパティを設定すると `Role` 属性が出力されます)。 ```csharp [MessageContract] @@ -275,7 +273,7 @@ public class BankingTransaction } ``` - これらの属性を制御する 2 番目の方法は、コードを通して動的に行う方法です。これを行うには、必要なヘッダーの型を 型にラップし \(この型と非ジェネリック バージョンを混同しないようにしてください\)、その型を と共に使用します。これで、次のコード例に示すように、 のプロパティを使用して SOAP 属性を設定できるようになります。 + これらの属性を制御する 2 番目の方法は、コードを通して動的に行う方法です。 これを行うには、必要なヘッダーの型を 型にラップし (この型と非ジェネリック バージョンを混同しないようにしてください)、その型を と共に使用します。 これで、次のコード例に示すように、 のプロパティを使用して SOAP 属性を設定できるようになります。 ```csharp [MessageContract] @@ -295,8 +293,7 @@ bt.IsAudited.MustUnderstand=true; 動的制御機構と静的制御機構の両方を使用する場合、静的な設定が既定で使用されますが、次のコードに示すように、後で動的機構を使用して静的な設定をオーバーライドできます。 -``` -[C#] +```csharp [MessageHeader(MustUnderstand=true)] public MessageHeader documentApprover; // later on in the code: BankingTransaction bt = new BankingTransaction(); @@ -310,14 +307,14 @@ bt.documentApprover.MustUnderstand = false; // override the static default of 't [MessageHeaderArray] public MessageHeader documentApprovers[]; ``` - 受信側で、 クラスがこの型のヘッダーで使用されている場合にのみ、これらの SOAP 属性の読み取りを実行できます。受信メッセージの属性設定を明らかにするために、 型のヘッダーの `Actor`、`Relay`、または `MustUnderstand` の各プロパティを調べます。 + 受信側で、 クラスがこの型のヘッダーで使用されている場合にのみ、これらの SOAP 属性の読み取りを実行できます。 受信メッセージの属性設定を明らかにするために、`Actor` 型のヘッダーの `Relay`、`MustUnderstand`、または の各プロパティを調べます。 メッセージを受信して返信するときに、これらの SOAP 属性設定は 型のヘッダーとして往復するだけです。 -## SOAP 本文の順序 - 状況によっては、本文の各部分の順序を制御する必要があります。本文要素の既定の順序はアルファベット順ですが、 プロパティで制御できます。このプロパティのセマンティクスは、継承シナリオにおける動作を除き、 プロパティのセマンティクスと同じです \(メッセージ コントラクトでは、派生型の本文メンバーの前に基本データ型の本文メンバーが並べ替えられることはありません\)。[!INCLUDE[crdefault](../../../../includes/crdefault-md.md)][データ メンバーの順序](../../../../docs/framework/wcf/feature-details/data-member-order.md). +## SOAP 本文の順序 + 状況によっては、本文の各部分の順序を制御する必要があります。 本文要素の既定の順序はアルファベット順ですが、 プロパティで制御できます。 このプロパティのセマンティクスは、継承シナリオにおける動作を除き、 プロパティのセマンティクスと同じです (メッセージ コントラクトでは、派生型の本文メンバーの前に基本型の本文メンバーが並べ替えられることはありません)。 [!INCLUDE[crdefault](../../../../includes/crdefault-md.md)][データ メンバーの順序](../../../../docs/framework/wcf/feature-details/data-member-order.md)です。 - 次の例では、通常はアルファベット順で最初である `amount` が先頭にきますが、 プロパティによって 3 番目の位置に挿入されます。 + 次の例では、通常はアルファベット順で最初である `amount` が先頭にきますが、 プロパティによって 3 番目の位置に挿入されます。 ```csharp [MessageContract] @@ -330,25 +327,25 @@ public class BankingTransaction } ``` -## メッセージ コントラクトのバージョン管理 - 場合によっては、メッセージ コントラクトを変更する必要があります。たとえば、新しいバージョンのアプリケーションによってメッセージに余分なヘッダーが追加された場合です。この場合、新しいバージョンから古いバージョンに送信するときは、システムは余分なヘッダーを処理し、逆方向に送信するときは不足しているヘッダーを処理する必要があります。 +## メッセージ コントラクトのバージョン管理 + 場合によっては、メッセージ コントラクトを変更する必要があります。 たとえば、新しいバージョンのアプリケーションによってメッセージに余分なヘッダーが追加された場合です。 この場合、新しいバージョンから古いバージョンに送信するときは、システムは余分なヘッダーを処理し、逆方向に送信するときは不足しているヘッダーを処理する必要があります。 ヘッダーのバージョン管理には、次のルールが適用されます。 - [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] は不足しているヘッダーを問題にしません。対応するメンバーは既定値で残されます。 -- [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] は、予期しない余分なヘッダーも無視します。このルールの 1 つの例外は、入力 SOAP メッセージ内の余分なヘッダーの `MustUnderstand` 属性が `true` に設定されている場合です。この場合、認識する必要のあるヘッダーを処理できないため、例外がスローされます。 +- [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] は、予期しない余分なヘッダーも無視します。 このルールの 1 つの例外は、入力 SOAP メッセージ内の余分なヘッダーの `MustUnderstand` 属性が `true` に設定されている場合です。この場合、認識する必要のあるヘッダーを処理できないため、例外がスローされます。 メッセージ本文にも同様のバージョン管理ルールがあります。メッセージ本文の不足している部分と追加された部分はいずれも無視されます。 -## 継承に関する留意点 - メッセージ コントラクト型は、基本データ型がメッセージ コントラクトを持っている限り、他の型から継承することができます。 +## 継承に関する留意点 + メッセージ コントラクト型は、基本型がメッセージ コントラクトを持っている限り、他の型から継承することができます。 他のメッセージ コントラクト型から継承したメッセージ コントラクト型を使用して、メッセージを作成したり、メッセージにアクセスしたりする場合、次のルールが適用されます。 - 継承階層内のすべてのメッセージ ヘッダーが収集され、そのメッセージの完全なヘッダー セットが形成されます。 -- 継承階層内のすべてのメッセージ本文が収集され、完全なメッセージ本文が形成されます。本文の各部分は、継承階層内での位置に関係なく、通常の順序ルール \( プロパティ順、続いてアルファベット順\) に従って並べられます。メッセージ本文が継承ツリーの複数レベルに存在するメッセージ コントラクト継承の使用は、あまりお勧めできません。基本クラスと派生クラスでヘッダーまたは本文に同じ名前が定義されている場合は、base\-most クラスからのメンバーがそのヘッダーまたは本文の値を保存するために使用されます。 +- 継承階層内のすべてのメッセージ本文が収集され、完全なメッセージ本文が形成されます。 本文の各部分は、継承階層内での位置に関係なく、通常の順序ルール ( プロパティ順、続いてアルファベット順) に従って並べられます。 メッセージ本文が継承ツリーの複数レベルに存在するメッセージ コントラクト継承の使用は、あまりお勧めできません。 基本クラスと派生クラスでヘッダーまたは本文に同じ名前が定義されている場合は、base-most クラスからのメンバーがそのヘッダーまたは本文の値を保存するために使用されます。 次のコード例のクラスについて考えてみます。 @@ -368,31 +365,31 @@ public class PatientRecord : PersonRecord } ``` - `PatientRecord` クラスは、`ID` という名前の 1 つのヘッダーを持つメッセージを記述します。このヘッダーは、base\-most メンバーが選択されたことによって、`personID` メンバーには対応しますが、`patientID` メンバーには対応しません。そのため、この場合は `patientID` フィールドは使用されません。メッセージ本文には、アルファベット順で、`diagnosis` 要素の次に `patientName` 要素が含まれます。この例は、基本メッセージ コントラクトと派生メッセージ コントラクトの両方にメッセージ本文が含まれ、あまりお勧めできないパターンを示していることに注意してください。 + `PatientRecord` クラスは、`ID` という名前の 1 つのヘッダーを持つメッセージを記述します。 このヘッダーは、base-most メンバーが選択されたことによって、`personID` メンバーには対応しますが、`patientID` メンバーには対応しません。 そのため、この場合は `patientID` フィールドは使用されません。 メッセージ本文には、アルファベット順で、`diagnosis` 要素の次に `patientName` 要素が含まれます。 この例は、基本メッセージ コントラクトと派生メッセージ コントラクトの両方にメッセージ本文が含まれ、あまりお勧めできないパターンを示していることに注意してください。 -## WSDL に関する留意点 - メッセージ コントラクトを使用するサービスから Web サービス記述言語 \(WSDL: Web Services Description Language\) コントラクトを生成するときには、メッセージ コントラクトのすべての機能が結果の WSDL に反映されるわけではないことに留意してください。以下の点を考慮します。 +## WSDL に関する留意点 + メッセージ コントラクトを使用するサービスから Web サービス記述言語 (WSDL: Web Services Description Language) コントラクトを生成するときには、メッセージ コントラクトのすべての機能が結果の WSDL に反映されるわけではないことに留意してください。 次の点を考慮してください。 -- WSDL では、ヘッダー配列の概念を表現することができません。 を使用してヘッダー配列を含むメッセージを作成した場合、結果の WSDL は配列ではなく 1 つのヘッダーだけに反映されます。 +- WSDL では、ヘッダー配列の概念を表現することができません。 を使用してヘッダー配列を含むメッセージを作成した場合、結果の WSDL は配列ではなく 1 つのヘッダーだけに反映されます。 - 結果の WSDL ドキュメントに一部の保護レベル情報が反映されない場合があります。 - WSDL で生成されたメッセージ型が、メッセージ コントラクト型のクラスと同じ名前になります。 -- 複数の処理で同じメッセージ コントラクトを使用すると、WSDL ドキュメント内に複数のメッセージ型が生成されます。以降も使用できるように、"2"、"3" などの番号を付加することで名前を一意にします。WSDL をインポートし直すと、名前以外は同一の複数のメッセージ コントラクト型が作成されます。 +- 複数の処理で同じメッセージ コントラクトを使用すると、WSDL ドキュメント内に複数のメッセージ型が生成されます。 以降も使用できるように、"2"、"3" などの番号を付加することで名前を一意にします。 WSDL をインポートし直すと、名前以外は同一の複数のメッセージ コントラクト型が作成されます。 -## SOAP エンコードに関する留意点 - [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、XML のレガシー SOAP エンコード スタイルを使用できますが、このスタイルを使用することはお勧めしません。\(サービス コントラクトに適用されている で、`Use` プロパティを `Encoded` に設定して\) このスタイルを使用する場合、次の追加の考慮事項が適用されます。 +## SOAP エンコードに関する留意点 + [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] では、XML のレガシー SOAP エンコード スタイルを使用できますが、このスタイルを使用することはお勧めしません。 (サービス コントラクトに適用されている `Use` で、`Encoded` プロパティを に設定して) このスタイルを使用する場合、次の追加の考慮事項が適用されます。 - メッセージ ヘッダーはサポートされません。つまり、 属性と 配列属性は、SOAP エンコーディングと互換性がありません。 - メッセージ コントラクトがラップされていない場合、つまり、 プロパティが `false` に設定されている場合は、メッセージ コントラクトが持つことのできる本文の部分は 1 つに限られます。 -- 要求メッセージ コントラクトのラッパー要素の名前は、操作の名前と一致する必要があります。この場合、メッセージ コントラクトの `WrapperName` プロパティを使用します。 +- 要求メッセージ コントラクトのラッパー要素の名前は、操作の名前と一致する必要があります。 この場合、メッセージ コントラクトの `WrapperName` プロパティを使用します。 -- 応答メッセージ コントラクトのラッパー要素の名前は、操作の名前にサフィックスとして "Response" を付けたものと同じである必要があります。この場合、メッセージ コントラクトの プロパティを使用します。 +- 応答メッセージ コントラクトのラッパー要素の名前は、操作の名前にサフィックスとして "Response" を付けたものと同じである必要があります。 この場合、メッセージ コントラクトの プロパティを使用します。 -- SOAP エンコードはオブジェクト参照を保存します。たとえば、次のコードについて考えてみます。 +- SOAP エンコードはオブジェクト参照を保存します。 次に例を示します。 ```csharp [MessageContract(WrapperName="updateChangeRecord")] @@ -421,8 +418,8 @@ public class PatientRecord : PersonRecord SOAP エンコーディングを使用してメッセージをシリアル化した後、`changedFrom` と `changedTo` には `p` のコピーは保存されませんが、代わりに、`changedBy` 要素内部のコピーがポイントされます。 -## パフォーマンスに関する考慮事項 - すべてのメッセージ ヘッダーとメッセージ本文が個別にシリアル化されます。したがって、ヘッダーおよび本文ごとに同じ名前空間が繰り返し宣言される可能性があります。特に、回線上のメッセージ サイズに関して、パフォーマンスを向上させるには、複数のヘッダーと本文を単一のヘッダーまたは本文に統合します。たとえば、次のコードの代わりに +## パフォーマンスに関する考慮事項 + すべてのメッセージ ヘッダーとメッセージ本文が個別にシリアル化されます。 したがって、ヘッダーおよび本文ごとに同じ名前空間が繰り返し宣言される可能性があります。 特に、回線上のメッセージ サイズに関して、パフォーマンスを向上させるには、複数のヘッダーと本文を単一のヘッダーまたは本文に統合します。 たとえば、次のコードの代わりに ```csharp [MessageContract] @@ -454,11 +451,11 @@ public class OperationDetails } ``` -### イベント ベースの非同期とメッセージ コントラクト - イベント ベースの非同期モデルのデザイン ガイドラインには、複数の値を返す場合に、1 つの値を `Result` プロパティとして返し、残りの値を オブジェクトのプロパティとして返すことが記載されています。この 1 つの結果として、クライアントがイベント ベースの非同期コマンド オプションを使用してメタデータをインポートし、操作から複数の値が返される場合、既定の オブジェクトは 1 つの値を `Result` プロパティとして返し、残りの値は オブジェクトのプロパティになります。 +### イベント ベースの非同期とメッセージ コントラクト + イベント ベースの非同期モデルのデザイン ガイドラインには、複数の値を返す場合に、1 つの値を `Result` プロパティとして返し、残りの値を オブジェクトのプロパティとして返すことが記載されています。 この 1 つの結果として、クライアントがイベント ベースの非同期コマンド オプションを使用してメタデータをインポートし、操作から複数の値が返される場合、既定の オブジェクトは 1 つの値を `Result` プロパティとして返し、残りの値は オブジェクトのプロパティになります。 - メッセージ オブジェクトを `Result` プロパティとして受け取り、返された値をそのオブジェクトのプロパティとして取得する場合は、`/messageContract` コマンド オプションを使用します。これにより、 オブジェクトの `Result` プロパティとして応答メッセージを返すシグネチャが生成されます。すべての内部戻り値は、応答メッセージ オブジェクトのプロパティになります。 + メッセージ オブジェクトを `Result` プロパティとして受け取り、返された値をそのオブジェクトのプロパティとして取得する場合は、`/messageContract` コマンド オプションを使用します。 これにより、`Result` オブジェクトの プロパティとして応答メッセージを返すシグネチャが生成されます。 すべての内部戻り値は、応答メッセージ オブジェクトのプロパティになります。 -## 参照 - [データ コントラクトの使用](../../../../docs/framework/wcf/feature-details/using-data-contracts.md) - [サービスの設計と実装](../../../../docs/framework/wcf/designing-and-implementing-services.md) \ No newline at end of file +## 関連項目 + [データ コントラクトの使用](../../../../docs/framework/wcf/feature-details/using-data-contracts.md) + [サービスの設計と実装](../../../../docs/framework/wcf/designing-and-implementing-services.md) diff --git a/docs/framework/wcf/samples/basic-http-service.md b/docs/framework/wcf/samples/basic-http-service.md index 920db5f4a1b..8499f8267fe 100644 --- a/docs/framework/wcf/samples/basic-http-service.md +++ b/docs/framework/wcf/samples/basic-http-service.md @@ -1,54 +1,57 @@ ---- -title: "基本的な HTTP サービス | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: "基本的な HTTP サービス" +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: 27048b43-8a54-4f2a-9952-594bbfab10ad -caps.latest.revision: 9 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 9 ---- -# 基本的な HTTP サービス -このサンプルでは、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] REST プログラミング モデルを使用して、一般に "POX" \(Plain Old XML\) サービスと呼ばれる、HTTP ベース、RPC ベースのサービスを実装する方法を示します。このサンプルは、自己ホスト型 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] HTTP サービス \(Service.cs\) と、サービスの作成およびサービスへの呼び出しを行うコンソール アプリケーション \(Program.cs\) の 2 つのコンポーネントで構成されています。 - -## サンプルの詳細 +caps.latest.revision: "9" +author: Erikre +ms.author: erikre +manager: erikre +ms.openlocfilehash: cf4d40bce37dea65f2a27421de736779e467e728 +ms.sourcegitcommit: 4f3fef493080a43e70e951223894768d36ce430a +ms.translationtype: MT +ms.contentlocale: ja-JP +ms.lasthandoff: 11/21/2017 +--- +# 基本的な HTTP サービス +このサンプルでは、HTTP ベース、RPC ベースのよく"POX"(Plain Old XML) サービスと呼ばれるを使用してサービスを実装する方法、 [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] REST プログラミング モデルです。 このサンプルは、自己ホスト型 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] HTTP サービス (Service.cs) と、サービスの作成およびサービスへの呼び出しを行うコンソール アプリケーション (Program.cs) の 2 つのコンポーネントで構成されています。 + +## サンプルの詳細 [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスは、入力として渡された文字列を返す、`EchoWithGet` と `EchoWithPost` の 2 つの操作を公開します。 - `EchoWithGet` 操作には、この操作で HTTP `GET` 要求が処理されることを示す、 という注釈が付いています。 では明示的に を指定しないため、操作には `s` という名前のクエリ文字列パラメーターを使用して渡される入力文字列が必要です。サービスが要求する URI の形式は、 プロパティを使用してカスタマイズすることができます。 + `EchoWithGet` 操作には、この操作で HTTP 要求が処理されることを示す、`GET` という注釈が付いています。 では明示的に を指定しないため、操作には `s` という名前のクエリ文字列パラメーターを使用して渡される入力文字列が必要です。 サービスが要求する URI の形式は、 プロパティを使用してカスタマイズすることができます。 - `EchoWithPost` 操作には、これが `GET` 操作ではなく、副作用があることを示す、 という注釈が付いています。 では明示的に `Method` を指定しないため、この操作は、要求本文に文字列が含まれる HTTP `POST` 要求を処理します \(XML 形式など\)。HTTP メソッド、要求の URI の形式は、それぞれ プロパティ、 プロパティを使用して、カスタマイズすることができます。 + `EchoWithPost` 操作には、これが 操作ではなく、副作用があることを示す、`GET` という注釈が付いています。 では明示的に `Method` を指定しないため、この操作は、要求本文に文字列が含まれる HTTP `POST` 要求を処理します (XML 形式など)。 HTTP メソッド、要求の URI の形式は、それぞれ プロパティ、 プロパティを使用して、カスタマイズすることができます。 - App.config ファイルでは、`true` に設定されている プロパティを持つ既定の を使用して、WCF サービスを構成します。その結果、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] インフラストラクチャによって、自動的な HTML ベースのヘルプ ページが `http://localhost:8000/Customers/help` に作成されます。このページでは、サービスに対する HTTP 要求の作成方法とサービスの HTTP 応答の使用方法に関する情報が提供されます。 + App.config ファイルでは、 に設定されている プロパティを持つ既定の `true` を使用して、WCF サービスを構成します。 その結果、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] インフラストラクチャによって、自動的な HTML ベースのヘルプ ページが `http://localhost:8000/Customers/help` に作成されます。このページでは、サービスに対する HTTP 要求の作成方法とサービスの HTTP 応答の使用方法に関する情報が提供されます。 - Program.cs では、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] チャネル ファクトリを使用してサービスへの呼び出しを実行し、応答を処理する方法を示します。これは、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスにアクセスする 1 つの方法にすぎません。 などの他の .NET Framework クラスを使用して、サービスにアクセスすることも可能です。SDK 内の他のサンプル \(「[形式の自動選択](../../../../docs/framework/wcf/samples/automatic-format-selection.md)」のサンプルや「[基本的なリソース サービス](../../../../docs/framework/wcf/samples/basic-resource-service.md)」のサンプルなど\) では、これらのクラスを使用して [!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスと通信する方法を示します。 + Program.cs では、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] チャネル ファクトリを使用してサービスへの呼び出しを実行し、応答を処理する方法を示します。 これは、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)] サービスにアクセスする 1 つの方法にすぎません。 などの他の .NET Framework クラスを使用して、サービスにアクセスすることも可能です。 SDK 内の他のサンプル (など、[自動形式選択](../../../../docs/framework/wcf/samples/automatic-format-selection.md)サンプルと[基本的なリソース サービス](../../../../docs/framework/wcf/samples/basic-resource-service.md)サンプル) との通信にこれらのクラスを使用する方法を示して、[!INCLUDE[indigo2](../../../../includes/indigo2-md.md)]サービス。 - このサンプルは、コンソール アプリケーション内で実行される自己ホスト型サービスとクライアントで構成されています。コンソール アプリケーションが実行されると、クライアントはサービスに要求を発行し、応答からの適切な情報をコンソール ウィンドウに書き込みます。 + このサンプルは、コンソール アプリケーション内で実行される自己ホスト型サービスとクライアントで構成されています。 コンソール アプリケーションが実行されると、クライアントはサービスに要求を発行し、応答からの適切な情報をコンソール ウィンドウに書き込みます。 -#### このサンプルを使用するには +#### このサンプルを使用するには -1. 基本的な HTTP サービス サンプルのソリューションを開きます。サンプルを正しく実行するには、[!INCLUDE[vs_current_long](../../../../includes/vs-current-long-md.md)] を起動するときに、管理者として実行する必要があります。管理者として実行するには、[!INCLUDE[vs_current_long](../../../../includes/vs-current-long-md.md)] アイコンを右クリックし、コンテキスト メニューの **\[管理者として実行\]** をクリックします。 +1. 基本的な HTTP サービス サンプルのソリューションを開きます。 サンプルを正しく実行するには、[!INCLUDE[vs_current_long](../../../../includes/vs-current-long-md.md)] を起動するときに、管理者として実行する必要があります。 これには、右クリックし、[!INCLUDE[vs_current_long](../../../../includes/vs-current-long-md.md)]アイコンを選択して**管理者として実行**コンテキスト メニューからです。 -2. Ctrl キーと Shift キーを押しながら B キーを押してソリューションをビルドし、Ctrl キーを押しながら F5 キーを押してコンソール アプリケーションを、デバッグを行わずに実行します。コンソール ウィンドウが表示されて、実行中のサービスの URI および実行中のサービスの HTML ヘルプ ページの URI が示されます。ブラウザーでヘルプ ページの URI を入力することで、いつでも HTML ヘルプ ページを表示することができます。サンプルが実行されると、クライアントは現在のアクティビティのステータスを書き込みます。 +2. Ctrl キーと Shift キーを押しながら B キーを押してソリューションをビルドし、Ctrl キーを押しながら F5 キーを押してコンソール アプリケーションを、デバッグを行わずに実行します。 コンソール ウィンドウが表示されて、実行中のサービスの URI および実行中のサービスの HTML ヘルプ ページの URI が示されます。 ブラウザーでヘルプ ページの URI を入力することで、いつでも HTML ヘルプ ページを表示することができます。 サンプルが実行されると、クライアントは現在のアクティビティのステータスを書き込みます。 3. 任意のキーを押して、サンプルを終了します。 > [!IMPORTANT] -> サンプルは、既にコンピューターにインストールされている場合があります。続行する前に、次の \(既定の\) ディレクトリを確認してください。 +> サンプルは、既にコンピューターにインストールされている場合があります。 続行する前に、次の (既定の) ディレクトリを確認してください。 > > `:\WF_WCF_Samples` > -> このディレクトリが存在しない場合は、「[.NET Framework 4 向けの Windows Communication Foundation \(WCF\) および Windows Workflow Foundation \(WF\) のサンプル](http://go.microsoft.com/fwlink/?LinkId=150780)」にアクセスして、[!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] および [!INCLUDE[wf1](../../../../includes/wf1-md.md)] のサンプルをすべてダウンロードしてください。このサンプルは、次のディレクトリに格納されます。 +> このディレクトリが存在しない場合は、「 [.NET Framework 4 向けの Windows Communication Foundation (WCF) および Windows Workflow Foundation (WF) のサンプル](http://go.microsoft.com/fwlink/?LinkId=150780) 」にアクセスして、 [!INCLUDE[indigo1](../../../../includes/indigo1-md.md)] および [!INCLUDE[wf1](../../../../includes/wf1-md.md)] のサンプルをすべてダウンロードしてください。 このサンプルは、次のディレクトリに格納されます。 > > `:\WF_WCF_Samples\WCF\Basic\Web\BasicHttpService` -## 参照 - [形式の自動選択](../../../../docs/framework/wcf/samples/automatic-format-selection.md) - [基本的なリソース サービス](../../../../docs/framework/wcf/samples/basic-resource-service.md) \ No newline at end of file +## 関連項目 + [形式の自動選択](../../../../docs/framework/wcf/samples/automatic-format-selection.md) + [基本的なリソース サービス](../../../../docs/framework/wcf/samples/basic-resource-service.md) diff --git a/docs/framework/wcf/samples/jsonp.md b/docs/framework/wcf/samples/jsonp.md index 95762cf16e9..fce273a5bcf 100644 --- a/docs/framework/wcf/samples/jsonp.md +++ b/docs/framework/wcf/samples/jsonp.md @@ -1,40 +1,42 @@ ---- -title: "JSONP | Microsoft Docs" -ms.custom: "" -ms.date: "03/30/2017" -ms.prod: ".net-framework-4.6" -ms.reviewer: "" -ms.suite: "" -ms.technology: - - "dotnet-clr" -ms.tgt_pltfrm: "" -ms.topic: "article" +--- +title: JSONP +ms.custom: +ms.date: 03/30/2017 +ms.prod: .net-framework +ms.reviewer: +ms.suite: +ms.technology: dotnet-clr +ms.tgt_pltfrm: +ms.topic: article ms.assetid: c13b4d7b-dac7-4ffd-9f84-765c903511e1 -caps.latest.revision: 8 -author: "Erikre" -ms.author: "erikre" -manager: "erikre" -caps.handback.revision: 8 ---- -# JSONP -このサンプルでは、WCF REST サービスの JSONP \(JSON with Padding\) をサポートする方法を示します。 JSONP とは、現在のドキュメントでスクリプト タグを生成してドメイン間スクリプトを呼び出す際に使用される変換です。 結果は、指定したコールバック関数で返されます。 JSONP は、\