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.
İşlemsel almaları destekleyen taşımalar 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, işlem yapılan toplu işleme davranışının yapılandırma dosyasındaki bir hizmete 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şlem yapılan toplu işleme 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 işlemeye çalışır. Bunu yaptığınızda, bir işlem oluşturmanın ve her alma işleminde işlemenin görece yüksek maliyeti önlenir.
Oluşturucular
TransactedBatchingBehavior(Int32) |
Belirtilen toplu iş boyutuyla sınıfının yeni bir örneğini TransactedBatchingBehavior başlatır. |
Özellikler
MaxBatchSize |
Tek bir işlemde birlikte toplu işlenebilen en fazla alma işlemi sayısını alır veya ayarlar. |
Yöntemler
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() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection) |
Belirtilen hizmet uç noktasına bağlama ayarlarını uygular. Bu yöntem devralınamaz. |
IEndpointBehavior.ApplyClientBehavior(ServiceEndpoint, ClientRuntime) |
Belirtilen hizmet uç noktasına işlem toplu işlem davranışı ayarlarını 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. |