Avatar billede c-sharp Nybegynder
02. august 2005 - 08:23 Der er 9 kommentarer og
1 løsning

Spørgsmål til brug af xml, xls, asc som database

Jeg har en side der skal vise medarbejdere i forskellige afdelinger, man skal kunne vælge byer og afdeling i nogle dropdownbokse, derefter skal medarbejderne vises. Til det havde jeg tænkt på at bruge en xml fil. Grunden til at jeg vil bruge XML dokumentet som database er at kunden selv skal kunne opdatere den, så det eneste han skal gøre er at lave et udstræk fra hans system til en xml fil også uploade det på serveren.

Man kan jeg skyde noget sql af mod et xml dokument eller hvordan fungere det?

Hvis kunden kun har mulighed for at lave en kommasepereret fil eller et excel dokument, vil jeg så også kunne bruge disse dokumenter som database?

Er der nogen problemer i det ovennævnte?
Avatar billede arne_v Ekspert
02. august 2005 - 08:27 #1
Det er indbygget support for at læse XML ind  et DataSet.

Der er også lavet en ADO.NET provider for XML:
  http://www.gotdotnet.com/workspaces/workspace.aspx?id=5699d55a-83a2-42c7-8361-4815cd7cd736
Avatar billede c-sharp Nybegynder
02. august 2005 - 08:34 #2
Hvad med de andre filtyper jeg nævner?
Avatar billede arne_v Ekspert
02. august 2005 - 08:38 #3
XLS er nem - der er ODBC driver og OLE DB provider for den, så den bør
du sagtens kunne bruge via ADO.NET

CSV er nok lidt mere problematisk
Avatar billede c-sharp Nybegynder
02. august 2005 - 08:52 #4
Har du evt. et link til hvordan man bruger XLS som database?
Avatar billede arne_v Ekspert
02. august 2005 - 09:19 #5
lige ud af landevejen !

Book1.xls:

F1    F2
1    a
2    bb
3    ccc
4    dddd
5    eeeee

kode:

using System;
using System.Data.OleDb;

class MainClass
{
    public static void Main(string[] args)
    {
        OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Book1.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""");
        con.Open();
        OleDbCommand cmd = new OleDbCommand("SELECT * FROM [sheet1$] WHERE F1 > 2", con);
        OleDbDataReader rdr = cmd.ExecuteReader();
        while(rdr.Read()) {
            double f1 = (double)rdr[0];
            string f2 = (string)rdr[1];
            Console.WriteLine(f1 + " " + f2);
        }
        con.Close();
    }
}
Avatar billede c-sharp Nybegynder
02. august 2005 - 12:37 #6
Lige et tillægsspørgsmål, jeg forhøjre pointne.

Jeg har et excel dokument hvor i der er opsat data på følgende måde

1234         1235

Knud k                Berta s   
visevej 12        Hejvej 12
7000        8000


1236        1237

Svend S        Kuno S
Knudsvej 12        vestvej 1
6000        5000

Hvordan kan jeg trække data disse data ud og ligge dem i en kommasepareret fil?
Avatar billede c-sharp Nybegynder
02. august 2005 - 12:39 #7
Det står godt nok lidt rodet men, det skulle forstille at tingene var sat op i to kolloner
Avatar billede arne_v Ekspert
02. august 2005 - 13:43 #8
Du åbner en StringWriter, bruger kode som ovenfor og skriver felterne ud adskilt af komma
Avatar billede c-sharp Nybegynder
03. august 2005 - 11:24 #9
Jeg takker mange gange for hjælpen, smid et svar så er der point...
Avatar billede arne_v Ekspert
03. august 2005 - 11:57 #10
kommer her
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester