次の方法で共有


MergeArticle.ArticleResolver Property

アーティクルの同期に使用されるカスタム競合回避モジュールまたはビジネス ロジック ハンドラの表示名を取得します。値の設定も可能です。

名前空間: Microsoft.SqlServer.Replication
アセンブリ: Microsoft.SqlServer.Rmo (microsoft.sqlserver.rmo.dll 内)

構文

'宣言
Public Property ArticleResolver As String
public string ArticleResolver { get; set; }
public:
property String^ ArticleResolver {
    String^ get ();
    void set (String^ value);
}
/** @property */
public String get_ArticleResolver ()

/** @property */
public void set_ArticleResolver (String value)
public function get ArticleResolver () : String

public function set ArticleResolver (value : String)

プロパティ値

String 値です。

解説

ArticleResolver プロパティを取得できるのは、パブリッシャ側およびサブスクライバ側 (サブスクライバを再パブリッシュする場合) の固定サーバー ロール sysadmin のメンバです。また、パブリケーション データベースの固定データベース ロール db_owner のメンバ、ディストリビュータ側の固定データベース ロール replmonitor のメンバ、およびパブリケーション アクセス リスト (PAL) のメンバも取得できます。

ArticleResolver プロパティを設定できるのは、パブリッシャ側の固定サーバー ロール sysadmin のメンバです。また、パブリケーション データベースの固定データベース ロール db_owner のメンバも設定できます。

ArticleResolver を取得すると、sp_helpmergearticle (Transact-SQL) を実行したのと同じことになります。

ArticleResolver を設定すると、sp_addmergearticle (Transact-SQL) または sp_changemergearticle (Transact-SQL) を実行したのと同じことになります。

ArticleResolver プロパティは、Microsoft SQL Server 7.0、Microsoft SQL Server 2000、および Microsoft SQL Server 2005 で使用できます。

この名前空間、クラス、またはメンバは、Microsoft .NET Framework 2.0 でのみサポートされています。

使用例

// Define the Publisher, publication, and article names.
string publisherName = publisherInstance;
string publicationName = "AdvWorksSalesOrdersMerge";
string publicationDbName = "AdventureWorks";
string articleName = "SalesOrderHeader";

// Set the friendly name of the business logic handler.
string customLogic = "OrderEntryLogic";

MergeArticle article = new MergeArticle();

// Create a connection to the Publisher.
ServerConnection conn = new ServerConnection(publisherName);

try
{
    // Connect to the Publisher.
    conn.Connect();

    // Set the required properties for the article.
    article.ConnectionContext = conn;
    article.Name = articleName;
    article.DatabaseName = publicationDbName;
    article.PublicationName = publicationName;

    // Load the article properties.
    if (article.LoadProperties())
    {
        article.ArticleResolver = customLogic;
    }
    else
    {
        // Throw an exception of the article does not exist.
        throw new ApplicationException(String.Format(
        "{0} is not published in {1}", articleName, publicationName));
    }
    
}
catch (Exception ex)
{
    // Do error handling here and rollback the transaction.
    throw new ApplicationException(String.Format(
        "The business logic handler {0} could not be associated with " +
        " the {1} article.",customLogic,articleName), ex);
}
finally
{
    conn.Disconnect();
}
' Define the Publisher, publication, and article names.
Dim publisherName As String = publisherInstance
Dim publicationName As String = "AdvWorksSalesOrdersMerge"
Dim publicationDbName As String = "AdventureWorks"
Dim articleName As String = "SalesOrderHeader"

' Set the friendly name of the business logic handler.
Dim customLogic As String = "OrderEntryLogic"

Dim article As MergeArticle = New MergeArticle()

' Create a connection to the Publisher.
Dim conn As ServerConnection = New ServerConnection(publisherName)

Try
    ' Connect to the Publisher.
    conn.Connect()

    ' Set the required properties for the article.
    article.ConnectionContext = conn
    article.Name = articleName
    article.DatabaseName = publicationDbName
    article.PublicationName = publicationName

    ' Load the article properties.
    If article.LoadProperties() Then
        article.ArticleResolver = customLogic
    Else
        ' Throw an exception of the article does not exist.
        Throw New ApplicationException(String.Format( _
         "{0} is not published in {1}", articleName, publicationName))
    End If

Catch ex As Exception
    ' Do error handling here and rollback the transaction.
    Throw New ApplicationException(String.Format( _
     "The business logic handler {0} could not be associated with " + _
     " the {1} article.", customLogic, articleName), ex)
Finally
    conn.Disconnect()
End Try

スレッド セーフ

この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

開発プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

対象プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

参照

関連項目

MergeArticle Class
MergeArticle Members
Microsoft.SqlServer.Replication Namespace