RegisteredSubscriberCollection Sınıfı
Temsil eden bir koleksiyon , RegisteredSubscriber nesneler.
Devralma Hiyerarşisi
System.Object
Microsoft.SqlServer.Replication.ReplicationBaseCollection
Microsoft.SqlServer.Replication.RegisteredSubscriberCollection
Ad Alanı: Microsoft.SqlServer.Replication
Derleme: Microsoft.SqlServer.Rmo (Microsoft.SqlServer.Rmo içinde.dll)
Sözdizimi
'Bildirim
Public NotInheritable Class RegisteredSubscriberCollection _
Inherits ReplicationBaseCollection
'Kullanım
Dim instance As RegisteredSubscriberCollection
public sealed class RegisteredSubscriberCollection : ReplicationBaseCollection
public ref class RegisteredSubscriberCollection sealed : public ReplicationBaseCollection
[<SealedAttribute>]
type RegisteredSubscriberCollection =
class
inherit ReplicationBaseCollection
end
public final class RegisteredSubscriberCollection extends ReplicationBaseCollection
RegisteredSubscriberCollection türü aşağıdaki üyeleri açıklar.
Özellikler
Ad | Açıklama | |
---|---|---|
![]() |
Count | Başvurulan nesne sayısını alır koleksiyon. (ReplicationBaseCollection öğesinden devralınmıştır.) |
![]() |
IsSynchronized | Olup olmadığına alır erişmek için koleksiyon eşitlenir ve bu nedenle iş parçacığı-safe. (ReplicationBaseCollection öğesinden devralınmıştır.) |
![]() |
Item[Int32] | Alır bir RegisteredSubscriber , nesne koleksiyon dizin numarasına göre |
![]() |
Item[String] | Alır bir RegisteredSubscriber , nesne koleksiyon adı ile |
![]() |
SyncRoot | Koleksiyon erişimini eşitlemek için kullanılan bir nesneyi alır. (ReplicationBaseCollection öğesinden devralınmıştır.) |
Üst
Yöntemler
Ad | Açıklama | |
---|---|---|
![]() |
CopyTo(Array, Int32) | Koleksiyon bir diziye kopyalar. (ReplicationBaseCollection öğesinden devralınmıştır.) |
![]() |
CopyTo(RegisteredSubscriberCollection, Int32) | Koleksiyon bir kopyasını oluşturur. |
![]() |
Equals | (Object öğesinden devralınmıştır.) |
![]() |
Finalize | (Object öğesinden devralınmıştır.) |
![]() |
GetEnumerator | Nesneler arasında yinelemek için kullanılan bir Numaralandırıcı alır bir koleksiyon. (ReplicationBaseCollection öğesinden devralınmıştır.) |
![]() |
GetHashCode | (Object öğesinden devralınmıştır.) |
![]() |
GetType | (Object öğesinden devralınmıştır.) |
![]() |
InitList | Altyapı. (ReplicationBaseCollection öğesinden devralınmıştır.) |
![]() |
MemberwiseClone | (Object öğesinden devralınmıştır.) |
![]() |
Refresh | Koleksiyon yeniler. (ReplicationBaseCollection öğesinden devralınmıştır.) |
![]() |
ToString | (Object öğesinden devralınmıştır.) |
Üst
Açıklamalar
A RegisteredSubscriber derlemedeki nesne tarafından erişilebilir Item() özellik kullanarak bir [Int32] Dizin değeri veya kullanarak bir [String] abone adı. değer dizin
Bu ad, sınıf veya üye yalnızca desteklenen sürüm 2.0.net Framework.
İş Parçacığı Güvenliği
Herhangi bir ortak statik (Shared , Microsoft Visual Basic) bu tür üyeler birden çok iş parçacığı işlemleri. için güvenliHerhangi bir örnek üyenin iş parçacığı için güvenli olduğu garanti edilmemiştir.
Örnekler
Bu örnek sayısını denetlemek nasıl gösterir RegisteredSubscriber veritabanındaki nesneler RegisteredSubscriberCollection uygulama dosyasından RegisteredSubscribers özellik.
// Set the Distributor and publication database names.
// Publisher and Distributor are on the same server instance.
string publisherName = publisherInstance;
string distributorName = publisherInstance;
string distributionDbName = "distribution";
string publicationDbName = "AdventureWorks";
// Create connections to the Publisher and Distributor
// using Windows Authentication.
ServerConnection publisherConn = new ServerConnection(publisherName);
ServerConnection distributorConn = new ServerConnection(distributorName);
// Create the objects we need.
ReplicationServer distributor =
new ReplicationServer(distributorConn);
DistributionPublisher publisher;
DistributionDatabase distributionDb =
new DistributionDatabase(distributionDbName, distributorConn);
ReplicationDatabase publicationDb;
publicationDb = new ReplicationDatabase(publicationDbName, publisherConn);
try
{
// Connect to the Publisher and Distributor.
publisherConn.Connect();
distributorConn.Connect();
// Disable all publishing on the AdventureWorks2008R2 database.
if (publicationDb.LoadProperties())
{
if (publicationDb.EnabledMergePublishing)
{
publicationDb.EnabledMergePublishing = false;
}
else if (publicationDb.EnabledTransPublishing)
{
publicationDb.EnabledTransPublishing = false;
}
}
else
{
throw new ApplicationException(
String.Format("The {0} database does not exist.", publicationDbName));
}
// We cannot uninstall the Publisher if there are still Subscribers.
if (distributor.RegisteredSubscribers.Count == 0)
{
// Uninstall the Publisher, if it exists.
publisher = new DistributionPublisher(publisherName, distributorConn);
if (publisher.LoadProperties())
{
publisher.Remove(false);
}
else
{
// Do something here if the Publisher does not exist.
throw new ApplicationException(String.Format(
"{0} is not a Publisher for {1}.", publisherName, distributorName));
}
// Drop the distribution database.
if (distributionDb.LoadProperties())
{
distributionDb.Remove();
}
else
{
// Do something here if the distribition DB does not exist.
throw new ApplicationException(String.Format(
"The distribution database '{0}' does not exist on {1}.",
distributionDbName, distributorName));
}
// Uninstall the Distributor, if it exists.
if (distributor.LoadProperties())
{
// Passing a value of false means that the Publisher
// and distribution databases must already be uninstalled,
// and that no local databases be enabled for publishing.
distributor.UninstallDistributor(false);
}
else
{
//Do something here if the distributor does not exist.
throw new ApplicationException(String.Format(
"The Distributor '{0}' does not exist.", distributorName));
}
}
else
{
throw new ApplicationException("You must first delete all subscriptions.");
}
}
catch (Exception ex)
{
// Implement appropriate error handling here.
throw new ApplicationException("The Publisher and Distributor could not be uninstalled", ex);
}
finally
{
publisherConn.Disconnect();
distributorConn.Disconnect();
}
' Set the Distributor and publication database names.
' Publisher and Distributor are on the same server instance.
Dim publisherName As String = publisherInstance
Dim distributorName As String = subscriberInstance
Dim distributionDbName As String = "distribution"
Dim publicationDbName As String = "AdventureWorks2008R2"
' Create connections to the Publisher and Distributor
' using Windows Authentication.
Dim publisherConn As ServerConnection = New ServerConnection(publisherName)
Dim distributorConn As ServerConnection = New ServerConnection(distributorName)
' Create the objects we need.
Dim distributor As ReplicationServer
distributor = New ReplicationServer(distributorConn)
Dim publisher As DistributionPublisher
Dim distributionDb As DistributionDatabase
distributionDb = New DistributionDatabase(distributionDbName, distributorConn)
Dim publicationDb As ReplicationDatabase
publicationDb = New ReplicationDatabase(publicationDbName, publisherConn)
Try
' Connect to the Publisher and Distributor.
publisherConn.Connect()
distributorConn.Connect()
' Disable all publishing on the AdventureWorks database.
If publicationDb.LoadProperties() Then
If publicationDb.EnabledMergePublishing Then
publicationDb.EnabledMergePublishing = False
ElseIf publicationDb.EnabledTransPublishing Then
publicationDb.EnabledTransPublishing = False
End If
Else
Throw New ApplicationException( _
String.Format("The {0} database does not exist.", publicationDbName))
End If
' We cannot uninstall the Publisher if there are still Subscribers.
If distributor.RegisteredSubscribers.Count = 0 Then
' Uninstall the Publisher, if it exists.
publisher = New DistributionPublisher(publisherName, distributorConn)
If publisher.LoadProperties() Then
publisher.Remove(False)
Else
' Do something here if the Publisher does not exist.
Throw New ApplicationException(String.Format( _
"{0} is not a Publisher for {1}.", publisherName, distributorName))
End If
' Drop the distribution database.
If distributionDb.LoadProperties() Then
distributionDb.Remove()
Else
' Do something here if the distribition DB does not exist.
Throw New ApplicationException(String.Format( _
"The distribution database '{0}' does not exist on {1}.", _
distributionDbName, distributorName))
End If
' Uninstall the Distributor, if it exists.
If distributor.LoadProperties() Then
' Passing a value of false means that the Publisher
' and distribution databases must already be uninstalled,
' and that no local databases be enabled for publishing.
distributor.UninstallDistributor(False)
Else
'Do something here if the distributor does not exist.
Throw New ApplicationException(String.Format( _
"The Distributor '{0}' does not exist.", distributorName))
End If
Else
Throw New ApplicationException("You must first delete all subscriptions.")
End If
Catch ex As Exception
' Implement appropriate error handling here.
Throw New ApplicationException("The Publisher and Distributor could not be uninstalled", ex)
Finally
publisherConn.Disconnect()
distributorConn.Disconnect()
End Try
İş Parçacığı Güvenliği
Bu türdeki tüm ortak static (Visual Basic'te Shared) üyeler iş parçacığı için güvenlidir. Herhangi bir örnek üyenin iş parçacığı için güvenli olduğu garanti edilmemiştir.