Bağlantıları ve oturumlar adomd içinde çalışıyor.NET

xml Analysis (xmla), oturumları analitik veri erişim sırasında durum bilgisi içeren işlemler için destek sağlar. Oturum kapsamı ve içeriği komutları ve işlemleri için analitik veri kaynağı kare. Oturumlar yönetmek için kullanılan xmla öğeleri olan BeginSession, oturum, ve EndSession.

ADOMD.Oturum başlatma, sorguları gerçekleştirmek veya oturum sırasında veri almak ve bir oturumu kapatmak net bu üç xmla oturum öğelerini kullanır.

Oturum başlatma

SessionIDÖzelliği AdomdConnectionnesnesini içeren ilişkili etkin oturum tanıtıcısı AdomdConnectionnesnesini. Bu özellik doğru kullanarak, uygulamanızda hem istemci hem de sunucu statefulness etkili bir şekilde kontrol edebilirsiniz:

  • Eğer SessionIDözelliği geçerli oturumda ayarlı değil ne zaman kimlik Openyöntemi denir, AdomdConnectionnesne ister yeni oturum kimliği sağlayıcıdan. ADOMD.net bir xmla göndererek bir oturum başlatır BeginSessionSağlayıcı başlığına. Eğer adomd.net başarılı bir oturum adomd başlıyor.net Ayarlar değeri SessionIDözelliği için yeni oluşturulan oturumun oturum kodu.

  • Eğer SessionIDözelliğini geçerli bir oturum için zaman kimlik Openyöntemi denir, AdomdConnectionnesne belirtilen oturumuna bağlanmak çalışır.

Eğer AdomdConnectionnesne için belirtilen oturum yapamıyor ya da sağlayıcı oturumları desteklemiyor, bir özel durum.

[!NOT]

Sonra adomd vardı.net bir oturum oluşturmak için birden fazla bağlayabilirsiniz AdomdConnectiono tek etkin oturum veya nesnelere tek bir kesebilirsiniz AdomdConnectionobject o oturumdan ve o nesneyi başka bir oturuma yeniden.

Bir oturumda çalışan

adomd sonra.net bağlayan AdomdConnectionnesnesi için geçerli bir oturum, adomd.net bir xmla göndereceğiz Sessionbaşlığı ile her istek için veri veya bir uygulama tarafından yapılan meta veri sağlayıcısına. Her isteği-ecek-si olmak değerine ayarlanmış oturum Kımlığı SessionIDözellik.

Bir oturum Kımlığı bir oturumun geçerli kalır garanti etmez. (Örneğin, oturum zaman aşımına uğradı veya bağlantı kaybolursa varsa) oturumu sona ererse, biter ve bu oturuma eylemleri geri sağlayıcı seçebilirsiniz. Bu durumda, tüm sonraki yöntemi çağırır AdomdConnectionnesne istisna atmak. Ancak değil oturum sona erdiğinde bir sonraki istekte sağlayıcıya gönderildiğinde istisnalar atılır çünkü uygulamanız veri veya meta veri sağlayıcısından alır zaman bu özel durumları işlemek uygulamanız gerekir.

Bir oturumu kapatma

Eğer Closeyöntemi değeri belirtmeden denir endSessionparametresi, ya da eğer endSessionparametresi True olarak ayarlanır, her iki bağlantı oturum ve oturum ile ilişkili AdomdConnectionnesne are yumuk. Bir oturumu, adomd kapatmak için.net gönderir bir xmla EndSessiondeğerine ayarlanan sağlayıcısına, oturum kimliği ile SessionIDözellik.

Eğer Closeyöntemi ile denir endSessionparametre False olarak ile ilişkili oturumu AdomdConnectionnesne etkin kalır ancak oturumuna bağlantı kapatılır.

Örnek bir oturum yönetme

Aşağıdaki örnek, bir bağlantı açar, bir oturum oluşturma ve adomd içinde açık oturumu tutarken bağlantıyı kapatmak gösterilmiştir.NET:

Public Function CreateSession(ByVal connectionString As String) As String
    Dim strSessionID As String = ""
    Dim objConnection As New AdomdConnection

    Try
        ' First, try to connect to the specified data source.
        ' If the connection string is not valid, or if the specified
        ' provider does not support sessions, an exception is thrown.
        objConnection.ConnectionString = connectionString
        objConnection.Open()

        ' Now that the connection is open, retrieve the new
        ' active session ID.
        strSessionID = objConnection.SessionID
        ' Close the connection, but leave the session open.
        objConnection.Close(False)
        Return strSessionID

    Finally
        objConnection = Nothing
    End Try
End Function
Public Function CreateSession(ByVal connectionString As String) As String
    Dim strSessionID As String = ""
    Dim objConnection As New AdomdConnection

    Try
        ' First, try to connect to the specified data source.
        ' If the connection string is not valid, or if the specified
        ' provider does not support sessions, an exception is thrown.
        objConnection.ConnectionString = connectionString
        objConnection.Open()

        ' Now that the connection is open, retrieve the new
        ' active session ID.
        strSessionID = objConnection.SessionID
        ' Close the connection, but leave the session open.
        objConnection.Close(False)
        Return strSessionID

    Finally
        objConnection = Nothing
    End Try
End Function
static string CreateSession(string connectionString)
{
    string strSessionID = "";
    AdomdConnection objConnection = new AdomdConnection();
    try
    {
        /*First, try to connect to the specified data source.
          If the connection string is not valid, or if the specified
          provider does not support sessions, an exception is thrown. */
        objConnection.ConnectionString = connectionString;
        objConnection.Open();

        // Now that the connection is open, retrieve the new
        // active session ID.
        strSessionID = objConnection.SessionID;
        // Close the connection, but leave the session open.
        objConnection.Close(false);
        return strSessionID;
    }
    finally
    {
        objConnection = null;
    }
}
static string CreateSession(string connectionString)
{
    string strSessionID = "";
    AdomdConnection objConnection = new AdomdConnection();
    try
    {
        /*First, try to connect to the specified data source.
          If the connection string is not valid, or if the specified
          provider does not support sessions, an exception is thrown. */
        objConnection.ConnectionString = connectionString;
        objConnection.Open();

        // Now that the connection is open, retrieve the new
        // active session ID.
        strSessionID = objConnection.SessionID;
        // Close the connection, but leave the session open.
        objConnection.Close(false);
        return strSessionID;
    }
    finally
    {
        objConnection = null;
    }
}

Ayrıca bkz.

Başvuru

adomd bağlantıları oluşturma.NET