TransactedBatchingBehavior Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
İşlem almalarını destekleyen aktarımlar için alma işlemlerini iyileştirici bir davranışı temsil eder.
public ref class TransactedBatchingBehavior : System::ServiceModel::Description::IEndpointBehavior
public class TransactedBatchingBehavior : System.ServiceModel.Description.IEndpointBehavior
type TransactedBatchingBehavior = class
interface IEndpointBehavior
Public Class TransactedBatchingBehavior
Implements IEndpointBehavior
- Devralma
-
TransactedBatchingBehavior
- Uygulamalar
Örnekler
Aşağıdaki örnekte, bir yapılandırma dosyasındaki bir hizmete işleme toplu işlem davranışının nasıl ekleneceği gösterilmektedir.
<system.serviceModel>
<services>
<service name="Microsoft.ServiceModel.Samples.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8000/ServiceModelSamples/service"/>
</baseAddresses>
</host>
<endpoint address="net.msmq://localhost/private/ServiceModelSamples"
binding="netMsmqBinding"
contract="Microsoft.ServiceModel.Samples.IQueueCalculator" />
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
<serviceMetadata httpGetEnabled="True"/>
</behavior>
<behavior name="transactedBatching" maxBatchSize="10">
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
Aşağıdaki örnekte koddaki bir hizmete işleme toplu işlem davranışının nasıl ekleneceği gösterilmektedir.
// Note: Service class must be marked with [ServiceBehavior(ReleaseServiceInstanceOnTransactionComplete=false)].
Uri baseAddress = new Uri("http://localhost:8000/ServiceModelSamples/service");
// Create a ServiceHost for the CalculatorService type.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress))
{
ServiceEndpoint endpoint;
endpoint = serviceHost.AddServiceEndpoint(typeof(IQueueCalculator), new NetMsmqBinding(),"net.msmq://localhost/private/ServiceModelSamples");
endpoint.Behaviors.Add(new TransactedBatchingBehavior(10));
// Open the ServiceHost to create listeners and start listening for messages.
serviceHost.Open();
// The service can now be accessed.
Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
// Close the ServiceHost to shutdown the service.
serviceHost.Close();
}
Açıklamalar
Bu davranışla yapılandırılan bir aktarım, birkaç alma işlemini tek bir işlemde toplu hale getirmek için çalışır. Bunu yaptığınızda, bir işlem oluşturmanın ve her alma işleminde işlemenin görece yüksek maliyeti engellenir.
Oluşturucular
| Name | Description |
|---|---|
| TransactedBatchingBehavior(Int32) |
Belirtilen toplu iş boyutuyla sınıfın TransactedBatchingBehavior yeni bir örneğini başlatır. |
Özellikler
| Name | Description |
|---|---|
| MaxBatchSize |
Tek bir işlemde birlikte toplu işlenebilen en fazla alma işlemi sayısını alır veya ayarlar. |
Yöntemler
| Name | Description |
|---|---|
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
| Name | Description |
|---|---|
| IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection) |
Belirtilen hizmet uç noktasına bağlama ayarları uygular. Bu yöntem devralınamaz. |
| IEndpointBehavior.ApplyClientBehavior(ServiceEndpoint, ClientRuntime) |
İşlem toplu işlem davranışı ayarlarını belirtilen hizmet uç noktasına uygular. Bu yöntem devralınamaz. |
| IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint, EndpointDispatcher) |
Bir uç nokta dağıtıcısını belirtilen hizmet uç noktasıyla ilişkilendirir. Bu yöntem devralınamaz. |
| IEndpointBehavior.Validate(ServiceEndpoint) |
İşlem yapılan toplu işlemenin yalnızca işlem yapılan alma işlemini destekleyen bağlamalar için geçerli olmasını sağlar. Bu yöntem devralınamaz. |