Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# и Firebird .NET Data Provider 2.5 / 21 сообщений из 21, страница 1 из 1
13.05.2009, 21:16
    #35984148
bjkolj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
Всем привет!!! Возникла проблема при работе з базой данных Firebird.
Я установил клиент Firebird .NET Data Provider 2.5 , подключил FirebirdSql.Data.FirebirdClient.dll к проекту.
Следующий код работает:
FbCommand command = new FbCommand(sqlString, connection);
FbDataReader sqlDataReader = command.ExecuteReader();
if (sqlDataReader.Read())
{
return sqlDataReader.GetInt32(0);

}


а в таком варианте не работает:
FbCommand command = new FbCommand(sqlString, connection);
FbDataReader sqlDataReader = command.ExecuteReader();
if (sqlDataReader.Read())
{
object ob = sqlDataReader.GetValue(0);
}


также не работает следующий код:
FbCommand command = new FbCommand(sqlString, connection);
FbDataAdapter dataadapte = new FbDataAdapter(command);
DataTable dt = new DataTable("kolj");
dataadapte.Fill(dt);


Последние два примера выдают одинаковую ошыбку:
System.Exception was unhandled
Message="Невозможно загрузить файл или сборку \"System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\" или один из зависимых от них компонентов. Не удается найти указанный файл.""
Никак не могу понять в чем проблема (первый пример работает), пожалуйста помогите своими идеями!

Спасибо!!!
...
Рейтинг: 0 / 0
13.05.2009, 21:22
    #35984153
версия
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
версия дотнета?
...
Рейтинг: 0 / 0
13.05.2009, 21:24
    #35984155
Dr_Wolf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
а причем тут Firebird? у вас в референсах указана майкрософтовская сборка которой нет...
...
Рейтинг: 0 / 0
13.05.2009, 21:24
    #35984156
bjkolj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
.Net 3.5
...
Рейтинг: 0 / 0
13.05.2009, 21:25
    #35984157
bjkolj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
Dr_Wolf, почему тогда первій пример работает ?
...
Рейтинг: 0 / 0
13.05.2009, 21:39
    #35984175
версия
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
а почему бы не воспользоваться второй версией (которая для .нет 2.0) - она вроде ж не бета?
...
Рейтинг: 0 / 0
13.05.2009, 21:45
    #35984186
bjkolj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
Хотелось решыть ету проблему, если не выйдет то буду пробовать под .Net 2.0
...
Рейтинг: 0 / 0
13.05.2009, 21:52
    #35984196
версия
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
да просто вот эта строчка

<Reference Include="System.Data.Entity, Version= 2.0.0.0 , Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
в файле проекта провайдера зело смущает.... вообще-то эта длл должна быть 3.5.0.0
...
Рейтинг: 0 / 0
14.05.2009, 07:39
    #35984504
MaxVal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
bjkolj
Последние два примера выдают одинаковую ошыбку:
System.Exception was unhandled
Message="Невозможно загрузить файл или сборку \"System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\" или один из зависимых от них компонентов. Не удается найти указанный файл.""
Никак не могу понять в чем проблема (первый пример работает), пожалуйста помогите своими идеями!
Спасибо!!!

Народ, у меня такая же ошибка, но только на другой машине.
Т.е. на машине где компиляю все ровно, на ней же естественно установлен и настроен Firebird .NET Data Provider 2.0. При компиляции в дистрибутив вгоняется библиотека FirebirdSql.VisualStudio.DataTools.dll и вроде бы как все должно работать и на другой машине. НО! Выдержка из инструкции по установке:

2. Modify machine.config file.
------------------------------
Modify it like this (for 64bit systems you have to edit "32bit version" of this file, because Visual Studio is 32bit, but there's no problem with editing the "64bit version" too):

<configuration>
<configSections>
...
<section name="firebirdsql.data.firebirdclient" type="System.Data.Common.DbProviderConfigurationHandler, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
...
<configSections>
...
<system.data>
<DbProviderFactories>
...
<add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".Net Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient, Version=%Version%, Culture=%Culture%, PublicKeyToken=%PublicKeyToken%" />
...
</DbProviderFactories>
</system.data>
</configuration>

And substitute (these informations you can find using gacutil):
- %Version% with the version of the provider assembly that you have in the GAC.
- %Culture% with the culture of the provider assembly that you have in the GAC.
- %PublicKeyToken% with the PublicKeyToken of the provider assembly that you have in the GAC.

Note:
Notice, that in configSections there isn't signature of FirebirdClient but the signature of assembly from framework.

Т.е. я так понимаю, что и другую машину нужно настраивать для работы программы.
Может кто-нить знает как сделать (может с помощью чего) чтобы прога работала универсально без настройки каждой отдельной машины вручную?
Откомпилировал - бросил в сеть - все работают!
...
Рейтинг: 0 / 0
14.05.2009, 11:41
    #35985087
Dr_Wolf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
не надо нечего на других машинах настраивать. то что прописывается в machine.conf нужно только чтоб студия могла цеплять этот провайдер. Тебе на другой машине, для работы программы, требуется только установить FirebirdClient тойже версии, или просто распространять вместе со своим приложением библиотеку FirebirdSql.Data.FirebirdClient.dll
...
Рейтинг: 0 / 0
14.05.2009, 12:44
    #35985259
MaxVal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
Dr_Wolfне надо нечего на других машинах настраивать. то что прописывается в machine.conf нужно только чтоб студия могла цеплять этот провайдер. Тебе на другой машине, для работы программы, требуется только установить FirebirdClient тойже версии, или просто распространять вместе со своим приложением библиотеку FirebirdSql.Data.FirebirdClient.dll
Точно! Установил клиента и все четко заработало!
Спасибо! Шастью нет предела )))
Прога будет распространятся с клиентом!
...
Рейтинг: 0 / 0
14.05.2009, 14:19
    #35985548
bjkolj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
Проблема решылась когда установил сервисный пакет 1 для .Нет 3.5. Там есть новая технология ADO.NET Entity Framework , наверно ее и нехватало.
Всем спасибо!
...
Рейтинг: 0 / 0
29.03.2010, 21:40
    #36549258
porsche20
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
Хало, есть такая проблема:

Провайдер файр птицы почему-то отказывается выполнять больше одной команды за один вызов ExecuteNonQuery(): , тоесть:

Код: plaintext
1.
2.
command.CommandText = "insert into ParHist_Long(id,id_parameter,Val,DateTime,Type)"+ 
                        "Values (GEN_ID(GEN_PARHIST_LONG_ID,1),@id, @v,@d,@t);";
 command.ExecuteNonQuery();
- работает нормально

Код: plaintext
1.
2.
3.
4.
command.CommandText = "insert into ParHist_Long(id,id_parameter,Val,DateTime,Type)"+ 
                        "Values (GEN_ID(GEN_PARHIST_LONG_ID,1),@id, @v,@d,@t); insert into ParHist_Long(id,id_parameter,Val,DateTime,Type)"+ 
                        "Values (GEN_ID(GEN_PARHIST_LONG_ID,1),@id, @v,@d,@t);";
 command.ExecuteNonQuery();
- вылетает в ексепшн:
Код: plaintext
1.
2.
3.
4.
Dynamic SQL Error
SQL error code = -104
Token unknown - line 1, column 109
insert

Насколько я понимаю, когда нужно записать за один раз большое кол-во записей, можно сформировать большую строку запроса и отправить ее на выполнение один раз, и это будет оптимальнее, чем каждый раз вызывать command.ExecuteNonQuery(); Или нет?
...
Рейтинг: 0 / 0
24.10.2010, 16:52
    #36916700
Igor Krinetsky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
авторНарод, у меня такая же ошибка, но только на другой машине.
Т.е. на машине где компиляю все ровно, на ней же естественно установлен и настроен Firebird .NET Data Provider 2.0. При компиляции в дистрибутив вгоняется библиотека FirebirdSql.VisualStudio.DataTools.dll и вроде бы как все должно работать и на другой машине. НО! Выдержка из инструкции по установке:

У меня тоже не запускается проект на другом компе
Все файлы на месте и FireBird SQL Сlient тоже есть

Не хочет интить ентити
что делать ошибки нет ...
...
Рейтинг: 0 / 0
25.10.2010, 04:21
    #36917114
antox
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
Подскажите пожалуйста, где можно почитать/посмотреть как вообще использовать Firebird .NET Data Provider ? Т.е. как и что подключить к VS 2010 и как подключаться к БД, делать запросы, получать набор данных..?
...
Рейтинг: 0 / 0
14.09.2011, 07:03
    #37439273
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
antoxПодскажите пожалуйста, где можно почитать/посмотреть как вообще использовать Firebird .NET Data Provider ? Т.е. как и что подключить к VS 2010 и как подключаться к БД, делать запросы, получать набор данных..?
У меня тоже точно такая же версия VS 2010 , спокойно подключаюсь к Data Provider 2.5, до этого еще установил серер firebird 2.5
Работает через него, проверил. Вот только к таблице DataGridView подцепить не могу... только начал разбираться в C#.
PS: код писал не я, но в нем более менее разобрался. и Если у версия embedded то как я понимаю servertype=1 нужно выставить.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
using System;
using System.Windows.Forms;
using FirebirdSql.Data.FirebirdClient;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private static string connectstr = //Database=192.168.0.1:C:\base.gdb
    @"User=SYSDBA;Password=masterkey;Database=C:\base.FDB;
    Port=3050;Dialect=3; Charset=NONE;Role=;Connection lifetime=15;Pooling=true;
    MinPoolSize=0;MaxPoolSize=50;Packet Size=8192;ServerType=0;";

        private void Form1_Load(object sender, EventArgs e)
        {
        }

        private void button1_Click(object sender, EventArgs e)
        {
            FbConnection conn = new FbConnection(connectstr);

            try
            {
                conn.Open();

                MessageBox.Show("Работает");                
                
                conn.Close();

            }
            catch (Exception ex)
            {
                MessageBox.Show("Не работает. Ошибка: " + ex.Message);
            }
        }
    }
}

Народ помогите подсоеденить данные к таблице. Например из Таблицы users вывести все данные или столбец.
...
Рейтинг: 0 / 0
06.11.2011, 13:21
    #37513258
umatkot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
Допустим, подключился к базе и вывел сообщение: "Работает." Вот после него можно смело выхватить целую таблицу: (У меня first_tab)

FbCommand fbcommand = fbconn.CreateCommand();
fbcommand.CommandType = CommandType.Text;
fbcommand.Connection = fbconn;
fbcommand.CommandText = "SELECT * FROM first_tab;";
FbDataReader dreader = fbcommand.ExecuteReader();
DataTable dt = new DataTable("furst_tab");//Здесь я её просто так обозвал
dt.Load(dreader);//Грузим таблицу
И теперь в dt - твоя таблица из запроса.
Вобще я взял это из "Работа с базами данных на языке C#. Технология ADO.NET"
Вот ссылка ( http://vuzer.info/load/programirovanie/rabota_s_bazami_dannykh_na_jazyke_c_tekhnologija_ado_net/16-1-0-9330)
...
Рейтинг: 0 / 0
06.11.2011, 13:35
    #37513265
umatkot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
А потом делаем контрол на форме DataGridView и добавляем следующий код после вывода сообщения "Работает":

MessageBox.Show("Работает");
FbCommand fbcommand = fbconn.CreateCommand();
fbcommand.CommandType = CommandType.Text;
fbcommand.Connection = fbconn;
fbcommand.CommandText = "SELECT * FROM first_tab;";
FbDataAdapter FBAdapter = new FbDataAdapter(fbcommand.CommandText,fbcommand.Connection);
DataSet fbds = new DataSet("first_tab_DS");
FBAdapter.Fill(fbds,"first_tab");
dataGridView1.DataSource = fbds.Tables["first_tab"].DefaultView;


И всё. Но работая с базой через Grid, лучше всё-таки пользоваться книжкой))
...
Рейтинг: 0 / 0
06.11.2011, 15:45
    #37513356
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
umatkotИ всё. Но работая с базой через Grid, лучше всё-таки пользоваться книжкой))
У Вас как раз пример из книжки. Но лучше пользоваться примерами из раздела "Как сделать" в MSDN.
Потому что всего того, что вы написали, делать не надо.
Кроме Fill все настраивается в дизайнере.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
14.10.2014, 10:17
    #38775894
des1roer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
народ. создал подключение все ок. но вот переделал винформ приложение в сервис и логер пишет такую ошибку
Could not load file or assembly 'FirebirdSql.Data.FirebirdClient, Version=4.5.1.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
...
Рейтинг: 0 / 0
15.10.2014, 07:33
    #38776843
des1roer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# и Firebird .NET Data Provider 2.5
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# и Firebird .NET Data Provider 2.5 / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]