C# Wynik zapytania MS SQL w body mail.

0

Witam wszystkich,

Potrzebuję pomocy w programie który pobiera dane z bazy danych i wysyła meile. Mój problem polega na tym, że chciałbym wynik zapytania z bazy ms sql zapisać do body mail tylko nie mam pomysłu jak to zrobić. Szukałem po różnych serwisach rozwiązania, ale nic nie znalazłem. Być może źle szukałem. Ilość rekordów z wyniku jest zmienna. Wszystko inne mi działa potrzebuję jedynie pomocy przy rozwiązaniu problemu wyniku zapytania w body mailu. Program konsolowy. Jestem nowy na forum i początkujący w pisaniu programów.

Pozdrawiam

Tomsik

0
var message = new MailMessage();
message.Body = $"{wynikazapytania}";
0

SqlCommand dane = new SqlCommand("select* from test");
SqlDataReader queryResult2 = dane.ExecuteReader();

message.Body = $"{queryResult2}";

Gdy robię w ten sposób na meila dostaję tylko System.Data.SqlClient.SqlDataReader

0

Kurcze, nie mam pojęcia co chcesz mi powiedzieć, możesz troszkę jaśniej bo nie wiem co robie źle.

0

W tym linku masz pokazane jak odczytać pojedynczy rekord. Naprowadziłem Cię, a teraz kombinuj. Napisz coś, jak nie zadziała to napisz co zrobiłeś i dalej dostaniesz pomoc.

1
  1. Utwórz StringBuilder do którego będzie wrzucał kolejne wiersze z wyników zapytania
  2. W pętli przechodzisz po kolejnych rekordach
  3. Odczytujesz wartości dla kolumn i dodajesz je do instancji strBuilder. W poniższym przykładzie odwołałem się do kolumny przez index: queryResult2[0]
    To tak chyba najprostsze co możesz zrobić.
StringBuilder strBuilder = new StringBuilder();

while (queryResult2.Read())
{
    strBuilder.Append(queryResult2[0].ToString() + "" + queryResult2[1].ToString());
} 

message.Body = strBuilder.ToString();
0

Dzieki Grzegorz bardzo mi pomogłeś właśnie o to chodziło. Szydlak wiem jak odczytać pojedyńczy rekord i zapisać go do zmiennej właśnie nie wiedziałem jak to zrobić aby wszystkie rekordy można było wywołać za pomocą jednej zmiennej jeśli tak mogę nazwać stringbuilder. Mimo wszystko dziękuję chłopaki. Męczyłem ten problem z ładny tydzień ale teraz już powinno mi wszystko działać.

Pozdrawiam i życzę miłego dnia
Tomsik

PS. Proszę o informację jak zamknąć temat lub proszę o zamknięcie tematu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1