powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# + Firebird. Какую технологию работы с базой использовать?
41 сообщений из 41, показаны все 2 страниц
C# + Firebird. Какую технологию работы с базой использовать?
    #38251298
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Firebird 2.5, VS 2010, C#

Наверное самая современная технология работы с базой под VS на сегодняшний день - это ORM?
но хотелось бы разобраться с другими вариантами. Я насчитал такие:
ORM

Firebird .Net Provider

Ole DB Provider

Какая разница и что общего у 2-го и 3-го подходов?
Какие преимущества у каждого из трех подходов и какие недостатки?
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251325
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.,

странное у вас сравнение. ORM это как бы подход для работы с данными, даже если это тхт файл... Если вы говорите о поддержке EF\L2SQL Firebird, то это вопрос как раз к 2 пункту - т.е. этот адаптер поддерживает или нет
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251366
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 и 3 пункт я сейчас не вижу как поддерживают EF (если я правильно понял суть EF)
т.е. привязки к конкретным классам (Entity) в моей модели похоже нет.
все на уровне
Код: sql
1.
SELECT * FROM

,
Код: sql
1.
INSERT INTO



Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
   OleDbConnection con = ConnectionProvider.CreateConnection();
   con.Open();
   
   OleDbCommand cmd = con.CreateCommand();
   cmd.Transaction = con.BeginTransaction();
   cmd.CommandText = "select * from employee";
   OleDbDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);

   while (rdr.Read())
   {
      Console.WriteLine(rdr["Name"]);
   } 
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251441
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.,

http://www.firebirdsql.org/en/net-provider/

EF поддерживается провайдером FB ...
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251444
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netivanORM это как бы подход для работы с данными, даже если это тхт файл...Да ну? Кто-то хранит реляционные данные в текстовых файлах? И что за ORM поддерживает сиё?
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251462
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

а что мешает написать свой провайдер, который умеет работать с CSV например?
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251476
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch,

вот-вот. я говорю про ORM, как о паттерне (подходе)
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251479
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LelouchskyANA,

а что мешает написать свой провайдер, который умеет работать с CSV например?Здравый смысл.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251497
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netivanLelouch,

вот-вот. я говорю про ORM, как о паттерне (подходе)У каждого паттерна есть описание и назначение. Сможете их привести, чтобы стало понятно, о чём Вы?
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251506
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

ну я не знаю что ответить, ну гляньте определение http://ru.wikipedia.org/wiki/ORM
зачем к словам-то придираться?
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251518
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netivanskyANA,

ну я не знаю что ответить, ну гляньте определение http://ru.wikipedia.org/wiki/ORM
зачем к словам-то придираться?Вот Вы сами его внимательно прочитайте, поймите, что означает слово реляционный (relational) и не пишите больше глупостей про текстовые файлы.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251537
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

ну здравый смысл же не помешал MS написать Jet.OleDB провайдер, который умеет выполнять SQL запросы к CSV файлам:
http://weblogs.asp.net/fmarguerie/archive/2003/10/01/29964.aspx
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251549
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch,

WIKIРеляционная модель ориентирована на организацию данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:
каждый элемент таблицы — один элемент данных
все ячейки в столбце таблицы однородные, то есть все элементы в столбце имеют одинаковый тип (числовой, символьный и т. д.)
каждый столбец имеет уникальное имя
одинаковые строки в таблице отсутствуют
порядок следования строк и столбцов может быть произвольным

То есть я не могу записать данные в txt файл, чтоб они удовлетворяли этим требованиям?)
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251553
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

ну я не понимаю, вы троллите или реально не понимаете что я хотел сказать. Вон лучше ТС помогите выбрать адаптер :)
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251577
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LelouchLelouch,

WIKIРеляционная модель ориентирована на организацию данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:
каждый элемент таблицы — один элемент данных
все ячейки в столбце таблицы однородные, то есть все элементы в столбце имеют одинаковый тип (числовой, символьный и т. д.)
каждый столбец имеет уникальное имя
одинаковые строки в таблице отсутствуют
порядок следования строк и столбцов может быть произвольным

То есть я не могу записать данные в txt файл, чтоб они удовлетворяли этим требованиям?)И тут Остапа понесло.

Написание своего провайдера даст ответ на сл. вопросы: 14272288 ?
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251652
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ок, я наверное не совсем четко выразился.

я так понимаю вариантов может быть два
либо использовать EF (используя разные подходы - EF от Microsoft или ORM OpenAccess от Telerik или что-то еще)
либо не использовать, а управлять данными через SQL запросы используя вот это:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
   OleDbConnection con = ConnectionProvider.CreateConnection();
   con.Open();
   
   OleDbCommand cmd = con.CreateCommand();
   cmd.Transaction = con.BeginTransaction();
   cmd.CommandText = "select * from employee";
   OleDbDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);

   while (rdr.Read())
   {
      Console.WriteLine(rdr["Name"]);
   } 
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251677
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

то есть отсутствие такого провайдера говорит о том, что нельзя, в теории, хранить реляционные данные в txt файлах?)
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251700
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мда.
похоже вопрос не в той ветке задал ((
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251706
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.,

не зная, что вы пишете, лично я не могу ничего советовать) Если у вас сплошной CRUD - используйте ORM, это сильно упростит жизнь.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251914
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LelouchskyANA,

то есть отсутствие такого провайдера говорит о том, что нельзя, в теории, хранить реляционные данные в txt файлах?)Не говорит.

Вы еврей?
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251920
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_., если у Вас есть время, то начните с ADO.NET, иначе - опишите задачу, посоветуем, что лучше использовать.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38251938
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA_andrews_., если у Вас есть время, то начните с ADO.NET, иначе - опишите задачу, посоветуем, что лучше использовать.

Есть уже работающее приложение, написаное на C#.
Visual Studio 2010, .Net Framework 4.0, WPF, MVVM, Firebird 2.5

до сих пор для доступа к базе использовали ORM Telerik Open Access.
Но использовали довольно устаревшую версию. А апдейт кажется платный.
Плюс есть сомнения в том, что все гладко с этим Telerik.
Возможно мы просто не до конца правильно используем его возможности пока. Я думаю Telerik Open Access хорошая технология, но иногда запросы выполняются очень долго. Но, повторюсь, возможно проблемы на нашей стороне.

Но как бы то ни было - возникла задача посмотреть.. пока просто посмотреть и проанализировать другие способы доступа к базе.
Т.к. этот анализ делался (если вообще делался) другими людьми, которые уже не работают в компании. Выбор Telerik так же был сделан ними.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38252038
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.,

только профилирование долгих запросов. Возможно, teleric фигово генерит код, возможно вы неправильно его используете :)
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38252061
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netivan_andrews_.,

Возможно, teleric фигово генерит код, возможно вы неправильно его используете :)

да. я об этом и говорю
Но сейчас не стоит задача выяснить что не так с Telerik (хотя это тоже важно сделать).
Сейчас хочется начать как бы с нуля. Вернуться к этапу анализа существующих подходов. Чтобы иметь общее представление.
Недостатки и преимущества.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38252093
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

нет.
авторто есть отсутствие такого провайдера говорит о том, что нельзя, в теории, хранить реляционные данные в txt файлах?)
Не говорит.

авторВот Вы сами его внимательно прочитайте, поймите, что означает слово реляционный (relational) и не пишите больше глупостей про текстовые файлы.

Ну сами и не пишите глупостей тогда
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38252119
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.,

Я бы на вашем месте и правда начал с профилировщика, как советует netivan. Возможно окажется достаточным разбить долгие запросы на несколько мелких.
P.S. OpenAccess ORM бесплатна, можете обновить её заодно.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38252121
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LelouchskyANA,

нет.
авторто есть отсутствие такого провайдера говорит о том, что нельзя, в теории, хранить реляционные данные в txt файлах?)
Не говорит.

авторВот Вы сами его внимательно прочитайте, поймите, что означает слово реляционный (relational) и не пишите больше глупостей про текстовые файлы.

Ну сами и не пишите глупостей тогдаА я и не пишу.

Я задал пару конкретных вопросов и не получил на них ответов.
Покажите мне пример использования ORM для доступа к текстовым файлам и я поверю, что под данными в виде txt файлов понимались именно реляционные данные.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38252168
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

http://www.perl.org/about/whitepapers/perl-database-orm.html

Using Perl's DBI (database interface) DBIx::Class is able to talk to many different types of database. These include: Oracle, SQL Server, MySQL, PostgreSQL, SQLite, ODBC, DB2 and even CSV .
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38252225
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch, на пример использования фраза "and even CSV" конечно не тянет, ну да ладно, убедили. Камрад netivan в курсе, что ORM работают только с реляционными данными.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254814
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch_andrews_.,

Я бы на вашем месте и правда начал с профилировщика, как советует netivan. Возможно окажется достаточным разбить долгие запросы на несколько мелких.
P.S. OpenAccess ORM бесплатна, можете обновить её заодно.

Меня сейчас не беспокоют долгие запросы.
Сейчас я хочу просто обсудить два разных подхода работы с базой под .NET. (Я так понял принципиальных подходов - два)
1. Entity Framework
2. Ole DB Provider

У подхода 1. Entity Framework есть множество решений (Telerik Open Access, Microsoft EF и т.д.). Основное преимущество - это привязка классов модели к структуре базы. Может что-то еще?
Если EF так хорош для .NET - почему существует альтернатива в виде Ole DB?
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254822
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
или вот еще - вполне удобное решение , используя Firebird .Net Provider
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254830
Barkan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.,

Думаю правильнее сформулировать так:
1. Использовать ORM (EF и прочие)
2. Не использовать ORM (ADO.NET)

Любителей поспорить много, ищи обсуждения в соседней ветке.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254842
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.до сих пор для доступа к базе использовали ORM Telerik Open Access.
Но использовали довольно устаревшую версию. А апдейт кажется платный.
А что мешает для начала узнать, платный ли он?

_andrews_.Плюс есть сомнения в том, что все гладко с этим Telerik.
На основе каких предпосылок сформировалось подобное сомнение?

_andrews_.Возможно мы просто не до конца правильно используем его возможности пока.
Так а что мешает правильно использовать его возможности?

_andrews_.Я думаю Telerik Open Access хорошая технология, но иногда запросы выполняются очень долго. Но, повторюсь, возможно проблемы на нашей стороне.
Так может, сначала понять, на чьей стороне проблемы?

P.S. Странный топик.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254862
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ_andrews_.до сих пор для доступа к базе использовали ORM Telerik Open Access.
Но использовали довольно устаревшую версию. А апдейт кажется платный.
А что мешает для начала узнать, платный ли он?

_andrews_.Плюс есть сомнения в том, что все гладко с этим Telerik.
На основе каких предпосылок сформировалось подобное сомнение?

_andrews_.Возможно мы просто не до конца правильно используем его возможности пока.
Так а что мешает правильно использовать его возможности?

_andrews_.Я думаю Telerik Open Access хорошая технология, но иногда запросы выполняются очень долго. Но, повторюсь, возможно проблемы на нашей стороне.
Так может, сначала понять, на чьей стороне проблемы?

P.S. Странный топик.

_andrews_.сейчас не стоит задача выяснить что не так с Telerik (хотя это тоже важно сделать).
Сейчас хочется начать как бы с нуля. Вернуться к этапу анализа существующих подходов. Чтобы иметь общее представление.
Недостатки и преимущества.

_andrews_.Меня сейчас не беспокоют долгие запросы.
Сейчас я хочу просто обсудить два разных подхода работы с базой под .NET. (Я так понял принципиальных подходов - два)
1. Entity Framework
2. Ole DB Provider
........
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254867
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторСейчас возникла задача посмотреть.. пока просто посмотреть и проанализировать другие способы доступа к базе.
Т.к. этот анализ делался (если вообще делался) другими людьми, которые уже не работают в компании. Выбор Telerik так же был сделан ними.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254869
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_., если хочешь начать с нуля, начни сначала с базы данных: выбрось на помойку убогий firebird, возмьми ms sql и начни творить чудеса на entity framework. Иначе, возьми nhibernate и начинай ваять под firebird правильный код.

...• Firebird .Net Provider
• Ole DB Provider
На свалку.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254889
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ ...• Firebird .Net Provider
• Ole DB Provider
На свалку.

об этом я тоже догадывался. Но все же. Почему на свалку?

МСУ_andrews_., если хочешь начать с нуля, начни сначала с базы данных: выбрось на помойку убогий firebird, возмьми ms sql и начни творить чудеса на entity framework. Иначе, возьми nhibernate и начинай ваять под firebird правильный код.

перейти с "убогого" сервера Firebird сейчас нет возможности.
Поэтому хотелось бы рассмотреть варианты, подходящие именно для Firebird
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254904
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.МСУНа свалку.
об этом я тоже догадывался. Но все же. Почему на свалку?

http://ru.wikipedia.org/wiki/Firebird Это коммерчески независимый проект C и C++ программистов, технических советников и разработчиков мультиплатформенных систем управления базами данных, основанный на исходном коде, выпущенном корпорацией Borland 25 июля 2000 года в виде свободной версии Interbase 6.0.
Меня смущают продукты от кучки фанатиков пацифистов. Во-первых, борланд давно канул в лета. Во-вторых, завтра ребята свернутся и продукт останется не у кассы. О чем говорить, непопулярный никому не нужный продукт, пережитки прошлого дельфистов кладоискателей. Ты и сам это знаешь, что тут еще добавить. Другое дело MS SQL или Oracle.

_andrews_.перейти с "убогого" сервера Firebird сейчас нет возможности.
Поэтому хотелось бы рассмотреть варианты, подходящие именно для Firebird
Тогда смотри на хибер.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254955
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.Я думаю Telerik Open Access хорошая технологияЯ так не думаю. :-)

1. Требует костылей под MSBuild для кодогенерации при компиляции.
2. Самовольно разбивает один LINQ запрос на XXX SQL запросов.
3. Преобразователь LINQ в SQL имеет недостаточно возможностей (на фоне EF или BLToolkit).

С 1 и 2 ещё можно смириться, но 3 ставит на нём крест в его текущей реализации.
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38254987
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К3. Преобразователь LINQ в SQL имеет недостаточно возможностей (на фоне EF).
Поправил :)
...
Рейтинг: 0 / 0
C# + Firebird. Какую технологию работы с базой использовать?
    #38255106
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей К3. Преобразователь LINQ в SQL имеет недостаточно возможностей (на фоне EF).
Поправил :)А пожалуйста. :-)
...
Рейтинг: 0 / 0
41 сообщений из 41, показаны все 2 страниц
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# + Firebird. Какую технологию работы с базой использовать?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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