Last active
September 7, 2021 14:02
-
-
Save bbrt3/9001f8b163643e9de7cab8c5786fdda2 to your computer and use it in GitHub Desktop.
WCF
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Service Contracts are collections of operations or methods, | |
which take parameters and return values. | |
They provide interface for those methods. | |
Data Contracts are parameters taken by service contracts and | |
values that they return | |
Service is a class that contains implementations of those methods | |
that we want to be available for our client. | |
Service Contracts + Data Contracts + Service = Service Host | |
To be able to call Service, ClientApp needs to have a proxy, | |
which is a chunk of code that runs and lives in the client application process, | |
exposes the interface that is the same interface as the service. | |
COMMUNICATION PIPE | |
CONSUMER => (PROXY => SERVICE CONTRACT) => SERVICE | |
Configuration defines all the aspects that define the nature of communication pipe, | |
between client and server side. | |
Configuration consists of three main parts: | |
a) Endpoints (analogy to a phone call) | |
- Address (number to dial) | |
- Binding (speaking the same language) | |
- Contract (subject to talk about) | |
b) Behaviors - definition of how the service handles a call once it comes into the service | |
c) Bindings - definition of details - how big can your messages be, what kind of security are you using | |
*/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment