Jak dotaz a zobrazí aplikace excel data pomocí ASP.NET, ADO.NET a Visual C# .NET

Microsoft Visual Basic .NET verzi tohoto článku naleznete 311731 .


Tento článek odkazuje na následující obor názvů knihovny tříd rozhraní.NET Framework společnosti Microsoft:

  • System.Data.OleDb

V TOMTO ÚKOLU

Souhrn

Tento článek ukazuje, jak zobrazit data z listu aplikace Excel prostřednictvím stránky technologie ASP.NET (ASPX) pomocí aplikace Visual C# .NET.

zpět na horní

Vytvořit vzorek listu aplikace Excel

  1. Spuštění aplikace Microsoft Excel a potom vytvořit nový sešit.
  2. Přidejte následující informace do nového listu, chcete-li vytvořit jednoduchou databázi aplikace Excel:
    AB
    1JménoPříjmení
    2ScottStřelec
    3KatieJordánsko
    Poznámka: Ačkoli data začíná buňky A1 v tomto příkladu, můžete přidat tato data do libovolné sousední buňky v listu.
  3. Zvýrazněte řádky a sloupce, kde jsou data uložena.
  4. V nabídce Vložit přejděte na příkaz názeva potom klepněte na tlačítko definovat.
  5. Do textového pole názvy v sešitu zadejte myRange1a klepněte na tlačítko OK.
  6. V nabídce soubor klepněte na tlačítko Uložit. V seznamu Uložit do vyberte kořenového adresáře webového serveru (což je obvykle C:\InetPub\Wwwroot\). Do pole název souboru zadejte ExcelData.xls. Klepněte na tlačítko OK
  7. V nabídce soubor klepněte na příkaz Konec.
zpět na horní

Vytvoření vzorku technologie ASP.NET pomocí Visual C# .NET

Tato ukázka kódu demonstruje dotazu a zobrazení informací v listu aplikace Excel. Následující kód používá listu, který jste vytvořili v předchozí části.

  1. Otevřete Microsoft Visual Studio .NET. Se zobrazí Visual Studio .NET integrované vývojové prostředí (IDE).
  2. V nabídce soubor přejděte na příkaz Nový a klepněte na příkaz projekt.
  3. V dialogovém okně Nový projekt v části Typy projektuklepněte na Projekty Visual C#. Ve skupinovém rámečku šablonyklepněte na příkaz Webová aplikace ASP.NET.
  4. V dialogovém okně Nový projekt vyhledejte název a umístění textových polí. Všimněte si, že textové pole název není k dispozici (zobrazí se šedě nebo zobrazeno šedě). Umístění textového pole s následujícím textem (nebo podobná):
    http://localhost/WebApplication1
    Nahraďte text v textovém poli umístění http://localhost/ExcelCSTesta potom klepněte na tlačítko OK. Je vytvořen nový projekt, což zahrnuje webový formulář s názvem WebForm1.aspx.
  5. V integrovaném vývojovém prostředí Visual Studio .NET vyhledejte okno Průzkumník řešení. Pokud jej nemůžete najít, klikněte na Průzkumník řešení v nabídce zobrazení .
  6. V Průzkumníku řešení klikněte pravým tlačítkem myši WebForm1.aspxa potom klepněte na tlačítko Návrhář zobrazení zobrazit návrháře pro vzhled stránky. Návrhář umožňuje přidat ovládací prvky a manipulovat vzhled stránky.
  7. Vyhledejte panelu nástrojů. V závislosti na nastavení možnosti IDE může zobrazit v panelu nástrojů okna nebo tlačítka, (který se často zobrazí na levé straně rozhraní IDE). Pokud nemůžete najít panelu nástrojů, klepněte na tlačítko panel v nabídce Zobrazit .

    Pokud panel nástrojů se zobrazí jako tlačítko, přesuňte ukazatel myši na tlačítko, které budou zobrazeny na panelu obsah.
  8. Pokud Návrhář zobrazení webový formulář je aktivní, panelu nástrojů je rozdělen do oddílů, včetně webových formulářů, komponenty, HTML a dalších oddílů. Klepněte na sekci webových formulářů.
  9. V části webových formulářů soupravě nástrojů klepněte na ovládací prvek DataGrida přetáhněte ji myší do návrháře pro formulář WebForm1.
  10. Klepněte pravým tlačítkem myši WebForm1.aspxa potom klepněte na tlačítko Zobrazit kód k zobrazení zdrojového kódu stránky.
  11. Přidejte následující příkazy na začátek kódu stránky výše v části oboru názvů:
    using System.Data.OleDb;using System.Data;

  12. Zvýraznění následující kód, klepněte pravým tlačítkem myši kód a potom klepněte na příkaz Kopírovat. V WebForm1.aspx.cs vložte kód do události Page_Load :
    // Create connection string variable. Modify the "Data Source"// parameter as appropriate for your environment.
    String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
    "Data Source=" + Server.MapPath("../ExcelData.xls") + ";" +
    "Extended Properties=Excel 8.0;";

    // Create connection object by using the preceding connection string.
    OleDbConnection objConn = new OleDbConnection(sConnectionString);

    // Open connection with the database.
    objConn.Open();

    // The code to follow uses a SQL SELECT command to display the data from the worksheet.

    // Create new OleDbCommand to return data from worksheet.
    OleDbCommand objCmdSelect =new OleDbCommand("SELECT * FROM myRange1", objConn);

    // Create new OleDbDataAdapter that is used to build a DataSet
    // based on the preceding SQL SELECT statement.
    OleDbDataAdapter objAdapter1 = new OleDbDataAdapter();

    // Pass the Select command to the adapter.
    objAdapter1.SelectCommand = objCmdSelect;

    // Create new DataSet to hold information from the worksheet.
    DataSet objDataset1 = new DataSet();

    // Fill the DataSet with the information from the worksheet.
    objAdapter1.Fill(objDataset1, "XLData");

    // Bind data to DataGrid control.
    DataGrid1.DataSource = objDataset1.Tables[0].DefaultView;
    DataGrid1.DataBind();

    // Clean up objects.
    objConn.Close();

  13. V nabídce soubor klepněte na příkaz Uložit vše uložit soubory projektu.
  14. V nabídce sestavení klepněte na tlačítko sestavit projekt Sestavit . Kód v kódu na pozadí stránky se připraví tak, že mohou být provedeny.
  15. V Průzkumníku řešení klikněte pravým tlačítkem myši WebForm1.aspxa potom klepněte na tlačítko Zobrazit v prohlížeči spustit kód.
zpět na horní

Doplňkový kód vysvětlení

Ukázkový kód v tomto článku používá Microsoft Jet OLE DB Provider pro přístup k listu aplikace Excel. Tento kód používá následující připojovací řetězec pro připojení k listu:

// Create connection string variable. Modify the "Data Source"// parameter as appropriate for your environment.
String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + Server.MapPath("../ExcelData.xls") + ";" +
"Extended Properties=Excel 8.0;";

Jak označit poznámky, je nutné upravit informace o cestě pro konkrétní list aplikace Excel. Navíc musíte také nastavit hodnotu parametru Rozšířené vlastnosti správně připojit k souboru.

Všimněte si, že řetězec připojení používá funkce Server.MapPath . Tato funkce trvá cesta souboru je relativní k Internetová informační služba (IIS) a vrátí cestu pevného disku k danému souboru. Například v části Vytvořit ukázkovou tabulku Excel vytvoříte ExcelData.xls v kořenovém adresáři webu, která se obvykle nachází v C:\Inetpub\Wwwroot. Zároveň se vytvoří podsložku s názvem ExcelCSTest ve složce Wwwroot a soubor s názvem WebForm1.aspx v rámci složky ExcelCSTest.

V tomto příkladu je cesta k souboru na pevném disku:

     C drive
- Inetpub
- Wwwroot (which contains ExcelData.xls)
- ExcelCSTest (which contains WebForm1.aspx)

Služba IIS cestu k souborům je následující:

     Web Root (which contains ExcelData.xls)
- ExcelCSTest (which contains WebForm1.aspx)

V tomto případě je relativní cesta z stránku WebForm1.aspx soubor ExcelData.xls "... / ExcelData.xls ". "... / "znaky informuje IIS, chcete-li přejít o úroveň výš. Proto kód
Server.MapPath("../ExcelData.xls")
Vrátí následující řetězec:
C:\Inetpub\Wwwroot\ExcelData.xls
Není nutné použít Server.MapPath. Můžete také pevný kód tyto informace na určitou cestu nebo jakoukoli metodu můžete použít k zadání umístění souboru aplikace Excel na pevném disku.

zpět na horní

Odkazy

Další informace o tom, jak získat přístup k souborům aplikace Excel pomocí technologie ASP.NET získáte v následujících článcích znalostní báze společnosti Microsoft:

307029 postupy: převod dat XML aplikace Microsoft Excel 2002 pomocí aplikace Visual C# .NET
306023 jak: přenos dat do sešitu aplikace Excel pomocí jazyka Visual C# .NET
Další informace o použití ADO.NET klepnutím na následující čísla článků znalostní báze Microsoft Knowledge Base:

306636 jak: připojení k databázi a příkaz spustit pomocí ADO.NET a Visual C# .NET
314145 jak: naplnit objekt DataSet z databáze pomocí Visual C# .NET
307587 jak: aktualizace databáze z objektu DataSet pomocí Visual C# .NET
Poznámka: společností, organizací, produktů, názvy domén, e-mailové adresy, loga, osoby, místa a události použité v ukázkách jsou smyšlené. Žádná souvislost se skutečnou společností, organizace, produktu, název domény, e-mailovou adresu, loga, osoby, místa nebo události je určena nebo nelze vyvozovat.

zpět na horní
Vlastnosti

ID článku: 306572 - Poslední kontrola: 20. 1. 2017 - Revize: 1

Váš názor