<netNamedPipeBinding>
Olyan kötést definiál, amely biztonságos, megbízható, és a gépek közötti folyamatközi kommunikációra van optimalizálva. Alapértelmezés szerint létrehoz egy futtatókörnyezeti kommunikációs vermet, amely WS-ReliableMessaging biztosít a megbízhatósághoz, az átviteli biztonság átvitelének biztonságához, az üzenetkézbesítés nevesített csőihez és a bináris üzenetkódoláshoz.
<Konfigurációs>
<system.serviceModel>
<Kötések>
<netNamedPipeBinding>
Syntax
<netNamedPipeBinding>
<binding closeTimeout="TimeSpan"
hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
maxBufferPoolSize="Integer"
maxBufferSize="Integer"
maxConnections="Integer"
maxReceivedMessageSize="Integer"
name="String"
openTimeout="TimeSpan"
receiveTimeout="TimeSpan"
sendTimeout="TimeSpan"
transactionFlow="Boolean"
transactionProtocol="OleTransactions/WS-AtomicTransactionOctober2004"
transferMode="Buffered/Streamed/StreamedRequest/StreamedResponse">
<security mode="None/Transport">
<transport protectionLevel="None/Sign/EncryptAndSign" />
</security>
<readerQuotas maxArrayLength="Integer"
maxBytesPerRead="Integer"
maxDepth="Integer"
maxNameTableCharCount="Integer"
maxStringContentLength="Integer" />
</binding>
</netNamedPipeBinding>
Attribútumok és elemek
Az alábbi szakaszok az attribútumokat, a gyermekelemeket és a szülőelemeket ismertetik
Attribútumok
Attribútum | Leírás |
---|---|
closeTimeout | Egy TimeSpan érték, amely megadja a bezárási művelet végrehajtásához megadott időintervallumot. Ennek az értéknek nagyobbnak vagy egyenlőnek kell lennie.Zero Az alapértelmezett érték 00:01:00. |
hostNameComparisonMode | Meghatározza az URI-k elemzéséhez használt HTTP-állomásnév-összehasonlító módot. Ez az attribútum típusa HostNameComparisonMode, amely azt jelzi, hogy a gazdanév használatával éri-e el a szolgáltatást az URI-n való egyeztetéskor. Az alapértelmezett érték a StrongWildcard, amely figyelmen kívül hagyja a gazdanevet az egyezésben. |
maxBufferPoolSize | Egy egész szám, amely meghatározza a kötés pufferkészletének maximális méretét. Az alapértelmezett érték 524 288 bájt (512 * 1024). A Windows Communication Foundation (WCF) számos része puffereket használ. A pufferek létrehozása és megsemmisítése minden alkalommal költséges, és a pufferek szemétgyűjtése is költséges. Pufferkészletek esetén a készletből puffert vehet fel, használhatja, majd a művelet befejezése után visszaadhatja a készletnek. Így elkerülhető a pufferek létrehozására és megsemmisítésére vonatkozó többletterhelés. |
maxBufferSize | Pozitív egész szám, amely az üzenetek memóriában való tárolásához használt puffer maximális méretét adja meg bájtban. Ha a puffer megtelt, a felesleges adatok a mögöttes szoftvercsatornában maradnak, amíg a puffernek ismét van helye. Ez az érték nem lehet kisebb, mint maxReceivedMessageSize attribútum. Az alapértelmezett érték a 65536. További információ: MaxBufferSize. |
maxConnections | Egy egész szám, amely megadja a szolgáltatás által létrehozott/elfogadható kimenő és bejövő kapcsolatok maximális számát. A bejövő és kimenő kapcsolatokat az attribútum által megadott külön korlátba számítja a rendszer. A korlátot meghaladó bejövő kapcsolatok várólistára kerülnek, amíg a korlát alatti terület elérhetővé nem válik. A korlátot meghaladó kimenő kapcsolatok várólistára kerülnek, amíg a korlát alatti terület elérhetővé nem válik. Az alapértelmezett érték 10. |
maxReceivedMessageSize | Pozitív egész szám, amely a kötéssel konfigurált csatornán fogadható maximális üzenetméretet adja meg bájtban, beleértve a fejléceket is. A korlátot túllépő üzenet feladója SOAP-hibát kap. A fogadó eldobja az üzenetet, és létrehozza az esemény bejegyzését a nyomkövetési naplóban. Az alapértelmezett érték a 65536. |
name | A kötés konfigurációs nevét tartalmazó sztring. Ennek az értéknek egyedinek kell lennie, mert a kötés azonosítására szolgál. A .NET-keretrendszer 4-től kezdődően a kötéseknek és viselkedéseknek nem kell nevet adniuk. Az alapértelmezett konfigurációval, valamint a név nélküli kötésekkel és viselkedésekkel kapcsolatos további információkért lásd: Egyszerűsített konfiguráció és egyszerűsített konfiguráció a WCF-szolgáltatásokhoz. |
openTimeout | Egy TimeSpan érték, amely megadja a nyitott művelet végrehajtásához megadott időintervallumot. Ennek az értéknek nagyobbnak vagy egyenlőnek kell lennie.Zero Az alapértelmezett érték 00:01:00. |
receiveTimeout | Egy TimeSpan érték, amely megadja a fogadási művelet végrehajtásához megadott időintervallumot. Ennek az értéknek nagyobbnak vagy egyenlőnek kell lennie.Zero Az alapértelmezett érték 00:10:00. |
sendTimeout | Egy TimeSpan érték, amely megadja a küldési művelet végrehajtásához megadott időintervallumot. Ennek az értéknek nagyobbnak vagy egyenlőnek kell lennie.Zero Az alapértelmezett érték 00:01:00. |
transactionFlow | Logikai érték, amely meghatározza, hogy a kötés támogatja-e a WS-Transactions folyamatait. A mező alapértelmezett értéke: false . |
transactionProtocol | Meghatározza az ezzel a kötéssel használandó tranzakciós protokollt. Az érvényes értékek a következők: - OleTransactions - WS-AtomicTransactionOctober2004 Az alapértelmezett érték az OleTransactions. Ez az attribútum típusa TransactionProtocol. |
transferMode | Egy TransferMode érték, amely meghatározza, hogy az üzenetek pufferelve vagy streamelve vannak-e, vagy kérés vagy válasz. |
Gyermekelemek
Elem | Leírás |
---|---|
<Biztonsági> | Meghatározza a kötés biztonsági beállításait. Ez az elem típusa NetNamedPipeBindingElement. |
<readerQuotas> | Meghatározza a SOAP-üzenetek összetettségére vonatkozó korlátozásokat, amelyeket az ezzel a kötéssel konfigurált végpontok dolgozhatnak fel. Ez az elem típusa XmlDictionaryReaderQuotasElement. |
Szülőelemek
Elem | Leírás |
---|---|
<Kötések> | Ez az elem standard és egyéni kötések gyűjteményét tartalmazza. |
Megjegyzések
A NetNamedPipeBinding
alapértelmezés szerint létrehoz egy futásidejű kommunikációs vermet, amely átviteli biztonságot, elnevezett üzenetek kézbesítésére szolgáló csöveket és bináris üzenetkódolást használ. Ez a kötés egy megfelelő Windows Communication Foundation (WCF) rendszer által biztosított választás a gépi kommunikációhoz. A tranzakciókat is támogatja.
Az alapértelmezett konfiguráció NetNamedPipeBinding
hasonló a , által NetTcpBinding
biztosított konfigurációhoz, de egyszerűbb, mert a WCF implementáció csak gépi használatra készült, és következésképpen kevesebb elérhető funkció érhető el. A legfontosabb különbség az, hogy a securityMode
beállítás csak a és Transport
a None
lehetőséget kínálja. A SOAP biztonsági támogatása nem szerepel a csomagban. A biztonsági viselkedés konfigurálható az opcionális securityMode
attribútum használatával.
Példa
Az alábbi példa a netNamedPipeBinding kötést mutatja be, amely folyamatközi kommunikációt biztosít ugyanazon a gépen. A nevesített csövek nem működnek a gépeken.
A kötés az ügyfél és a szolgáltatás konfigurációs fájljaiban van megadva. A kötés típusa az binding
elem attribútumában <endpoint>
van megadva. Ha konfigurálni szeretné a netNamedPipeBinding kötést, és módosítani szeretné annak egyes beállításait, meg kell adnia egy kötéskonfigurációt. A végpontnak név szerint kell hivatkoznia a kötéskonfigurációra egy bindingConfiguration
attribútummal. Ebben a példában a kötéskonfiguráció neve Binding1.
<configuration>
<system.serviceModel>
<services>
<service name="Microsoft.ServiceModel.Samples.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8000/ServiceModelSamples/service" />
</baseAddresses>
</host>
<!-- this endpoint is exposed at the base address provided by host: net.pipe://localhost/ServiceModelSamples/service -->
<endpoint address="net.pipe://localhost/ServiceModelSamples/service"
binding="netNamedPipeBinding"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
<!-- the mex endpoint is exposed at http://localhost:8000/ServiceModelSamples/service/mex -->
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
<bindings>
<netNamedPipeBinding>
<binding closeTimeout="00:01:00"
openTimeout="00:01:00"
receiveTimeout="00:10:00"
sendTimeout="00:01:00"
transactionFlow="false"
transferMode="Buffered"
transactionProtocol="OleTransactions"
hostNameComparisonMode="StrongWildcard"
maxBufferPoolSize="524288"
maxBufferSize="65536"
maxConnections="10"
maxReceivedMessageSize="65536">
<security mode="Transport">
<transport protectionLevel="EncryptAndSign" />
</security>
</binding>
</netNamedPipeBinding>
</bindings>
<!--For debugging purposes set the includeExceptionDetailInFaults attribute to true-->
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
<serviceMetadata httpGetEnabled="True" />
<serviceDebug includeExceptionDetailInFaults="False" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: