Page History
...
| Code Block | ||
|---|---|---|
| ||
var client = new NSTWsProvider.NtsWSProviderClient(binding, new EndpointAddress("https://test1-cnsp.ekstern-test.nspop.dk:8443/nts/service"));
var dgwsHeader = new dk.nsi.seal.dgwstypes.Header()
{
SecurityLevel = 4,
SecurityLevelSpecified = true,
Linking = new Linking { MessageID = Guid.NewGuid().ToString("D") }
};
using (new OperationContextScope(client.InnerChannel))
{
OperationContext.Current.OutgoingMessageHeaders.Add(XmlHeader(dgwsHeader)); // Indsæt header som XML, ud fra serialiseret header
var response = client.invokeAsync("test");
} |
Endpointbehaviors
Bruges til at tilføje processering af requests og responses af WCF klienter.
Eksempel:
| Code Block | ||
|---|---|---|
| ||
var client = new NSTWsProvider.NtsWSProviderClient(new BasicHttpBinding(), new EndpointAddress("https://test1-cnsp.ekstern-test.nspop.dk:8443/nts/service"));
client.Endpoint.EndpointBehaviors.Add(new ViaBehavior(new Uri("http://test1.ekstern-test.nspop.dk:8080/sosigw/proxy/soap-request"))); // Tilføj Via endpointbehavior
var dgwsHeader = new Header()
{
SecurityLevel = 4,
SecurityLevelSpecified = true,
Linking = new Linking { MessageID = Guid.NewGuid().ToString("D") }
};
using (new OperationContextScope(client.InnerChannel))
{
var response client.invokeAsync("test");
} |
Findes under namespace 'dk.nsi.seal'. Endpointbehaviors implementer System.ServiceModel.Dispatcher.IClientMessageInspector fra NuGet Gallery | System.ServiceModel.Primitives 4.10.0.
...
Tilpasser request XML header med manglende DGWS attributter og underskriver request vha. et associeret certifikat der gives til dens constructor. Yderligere valideres underskriften af response.
SealEndpointBehavior
TODO
ViaBehavior
Portering af ClientViaBehavior Class (System.ServiceModel.Description) | Microsoft Learn til .NET Standard.
Meget simpel klasse, der internt blot sætter en enkelt værdi til den Via URL man angiver.
Factories
SosiFactory har static metoder der kan generere nye IdCards.
...
