Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C# práce s class

Zdravím všechny. Mám dotaz ke classům v C#. Pracuji na kódu v ASP.NET na vyčítání dat z Excelovské xls tabulky. Dostal jsem se do fáze, kdy mám tohle:

    public class doba
    {
        public static string getText()
        {
            String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + (HttpContext.Current.Server.MapPath("data.xls")) + ";Extended Properties=\"Excel 8.0;HDR=No\"";
            OleDbConnection objConn = new OleDbConnection(sConnectionString);

            objConn.Open();

            OleDbCommand objCmdSelect = new OleDbCommand("SELECT * FROM [List1$B7:B7]", objConn);
            object nazev = objCmdSelect.ExecuteScalar();

            return nazev.ToString();

            objConn.Close();

        }
    }

Toto lze načíst klasicky takto:

this.Label1.Text = Objekt.doba.getText();

Problém spočívá v tom, že bych potřeboval načíst data do tabulky, tedy např. A1:C5. A to mi bohužel tímto způsobem nefunguje. Tu tabulku potřebuji dokonce složit tak, že její zápatí je zvlášť a záhlaví též. Jak na to?

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Keď chceš celý riadok a nie len jednu hodnotu, tak použiješ objCmdSelect.ExecuteReader alebo cez Dat…
los 24.04.2012 20:50
los
Mne vždycky srazí dolu sebevědomí, když vím co všechno Los ví, ale pak jsi vzpomenu že jste na nás d… poslední
AZOR 24.04.2012 23:19
AZOR

Keď chceš celý riadok a nie len jednu hodnotu, tak použiješ objCmdSelect.ExecuteReader alebo cez DataAdapter vytvoríš DataTable - príklady sú na MSDN.

Predpokladám, že ti je jasné, že volanie objConn.Close() sa nikdy nezavolá (píše ti to aj varovanie). Aby si správne uvoľňoval prostriedky, tak by si mal používať using. Taktiež nedodržiavaš štandardné názvové konvencie - meno triedy by malo začínať veľkým písmenom, malé prvé písmeno názvu metód patrí do Javy a nie do C#, maďarská notácia sa tiež už nenosí.

Zpět do poradny Odpovědět na původní otázku Nahoru