Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: OpenDialig Добавлено: 19.01.12 12:51  

Автор вопроса:  Nikos
Проблема следующая: в первом случае открываю dbf файл через openDialog, открываю его и все перксрасно работает
private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog dlgReeIN = new OpenFileDialog();
            //dlgReeIN.Filter = "Льготники.dbf";
            dlgReeIN.Title = "Выберите файл справочника льготников";
            if (dlgReeIN.ShowDialog() == DialogResult.OK)
            {
            string fn =  Path.GetFileName(Application.StartupPath + "\\Новая\\" + "df.DBF").ToString();

                OdbcConnection conn = new OdbcConnection();
                conn.ConnectionString = "Dsn=dBASE Files;" + Application.StartupPath + "\\Новая\\" + "df.DBF" + ";driverid=21;fil=dBase III;maxbuffersize=2048;pagetimeout=60;";
                OdbcDataAdapter DA = new OdbcDataAdapter();
                OdbcCommand Cmd = new OdbcCommand("select * from " + fn + " ", conn);
                DataSet ds = new DataSet(fn);
                conn.Open();
                DA.SelectCommand = Cmd;
                DA.Fill(ds, fn);

                foreach (DataRow dr in ds.Tables[fn].Rows)
                {
                    comboBox1.Items.Add(dr[0]);
                }
            }
        }


если же тоже самое дело но без openDialog то выскакивает ошибка у DA.Fill(ds, fn) "ERROR [42S02] [Microsoft][Драйвер ODBC dBase] Объект 'df.DBF' не найден ядром базы данных Microsoft Jet. Проверьте существование объекта и правильность имени и пути."
private void button1_Click(object sender, EventArgs e)
        {
            //OpenFileDialog dlgReeIN = new OpenFileDialog();
            ////dlgReeIN.Filter = "Льготники.dbf";
            //dlgReeIN.Title = "Выберите файл справочника льготников";
            //if (dlgReeIN.ShowDialog() == DialogResult.OK)
            //{
            string fn =  Path.GetFileName(Application.StartupPath + "\\Новая\\" + "df.DBF").ToString();

                OdbcConnection conn = new OdbcConnection();
                conn.ConnectionString = "Dsn=dBASE Files;" + Application.StartupPath + "\\Новая\\" + "df.DBF" + ";driverid=21;fil=dBase III;maxbuffersize=2048;pagetimeout=60;";
                OdbcDataAdapter DA = new OdbcDataAdapter();
                OdbcCommand Cmd = new OdbcCommand("select * from " + fn + " ", conn);
                DataSet ds = new DataSet(fn);
                conn.Open();
                DA.SelectCommand = Cmd;
                DA.Fill(ds, fn);

                foreach (DataRow dr in ds.Tables[fn].Rows)
                {
                    comboBox1.Items.Add(dr[0]);
                }
            //}
        }

хотя пути все прописаны в обоих случаях и в openDialog не нуждаются

Ответить

  Ответы Всего ответов: 1  

Номер ответа: 1
Автор ответа:
 SHDZ



ICQ: 209382104 

Вопросов: 39
Ответов: 244
 Профиль | | #1 Добавлено: 13.02.12 16:55
Судя по коду openDialog действительно не нужен, проверь в дебаге путь и есть ли файл в той папке Application.StartupPath + "\\Новая\\" + "df.DBF"

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам