2013-07-19 24 views
5

Rozpoczynam proces odkurzania w postgres z pliku wykonywalnego C#. Chcę, aby wiadomość została zwrócona z powrotem do mojego pliku wykonywalnego, ale nie mogę odzyskać wiadomości z okna wyjściowego.Powrót wiadomości z postgresu

Krótko mówiąc, szukam odpowiednika to w PostgreSQL z wykorzystaniem NPGSQL jak:

// Display messages this code is for SQL server to reteive data back from message tab 

conn.InfoMessage += delegate(object sender, SqlInfoMessageEventArgs e) { 
    stdmForm.txtLastSQLMessages.Text +`=` "\n" + e.Message; 
}; 

chcę dostać tę wiadomość w moim kodu C# za pomocą NPGSQL.

+0

Jaką wiadomość? Czy próbujesz uzyskać wyjście "VACBUS VERBOSE"? –

+0

Niektóre szybkie wyszukiwanie nie znalazło sposobu na uzyskanie komunikatów dziennika "NOTICE" i niższego poziomu w kliencie nPgSQL. Możesz ustawić 'client_min_messages', ale nie wiem jak uzyskać dostęp do logów z nPgSQL. Spójrz na kod źródłowy? –

+0

Czy masz na myśli kod NPGSQl? – prvnsaini

Odpowiedz

2

Próbowałem kodu poniżej. Da ci pełny dziennik wykonania. Z tego właśnie przeanalizowałem mój wymagany dziennik. To nie jest najlepszy sposób, ale nie mogłem znaleźć nic innego.

//log the Vacuum command information 
NpgsqlEventLog.Level = LogLevel.Debug; 
NpgsqlEventLog.LogName = VacuumLogFilePath + "rolling.log"; 
NpgsqlEventLog.EchoMessages = false; 

try 
{ 
    //Run the Vacuum Command 
    NpgsqlCommand comm = new NpgsqlCommand("VACUUM VERBOSE ANALYZE", connection); 
    comm.ExecuteNonQuery(); 

}