Я просмотрел справку и не видел полный список... настолько вводящий по абсолютному адресу вокруг кода, кажется, что константы предупреждения компилятора все перечислены в: CodeGear\RAD Studio\6.0\sources\toolsapi\DCCStrs.pas
Поиск "Implicit_String_Cast_Loss" и Вы будете видеть постоянный sIMPLICIT_STRING_CAST_LOSS = 'DCC_IMPLICIT_STRING_CAST_LOSS';
я принял бы остальную часть строк DCC_xxx с соответствующим X_true / _ ложь / _, ошибка определяет, то, что Вы после.
справка Онлайн не была очень хороша начиная с Дельфи 7.
Это основной вопрос / ответ Я указывал людям в отношении выбора .NET ORM:
NHibernate, Entity Framework, активные записи или linq2sql
Я поставил кучу вопросов типа "дубликат" в своем ответе на этот . Так что вы можете много почитать с разных точек зрения.
I ' выбираете ORM для системы .net?
Вы хотите убедиться, что он работает с ваша база данных. Если ваша база данных дизайн был по последнему слову техники 15 лет назад многие из более мелких и / или менее зрелых ORM не будут работать с вашим отсутствием ключи, странные отношения и т. д.
Убедитесь, что он работает с поставщик вашей базы данных. SQL Server поддержка почти всегда доступны, но другие базы данных могут или могут не поддерживаться различными ORM (MYSQL кажется вторым по обычно поддерживаемая база данных).
Если вы хотите создать свою базу данных на основе ваших классов .NET вам нужно чтобы убедиться, что ваша ORM поддерживает это.
Если вам нужна производительность, я думаю, вы держись подальше от плохой работы те, но они никогда не сделают список топ-5, если вы используете ORM, у которого есть некоторые основные уличный кредит, ты, наверное, в порядке здесь.
Вы должны убедиться, что у него есть функции, которые вам нужны: http://ayende.com/Blog/archive/2006/05/12/25ReasonsNotToWriteYourOwnObjectRelationalMapper.aspx
Учитывайте привязку к поставщику и как легко вы можете или не сможете избежать его (для базы данных поставщика и поставщика ORM).
Подумайте, сколько вы хотите потратить.
Подумайте, что вы хотите от кода поколение.
Подумайте, что вы хотите для модульного тестирования поддержка.
Подумайте, сколько времени вы хотите проводить исследования различных варианты.
Рассмотрим существующее сообщество вокруг ORM.
Есть много вещей, о которых нужно помнить. Я уверен, что смогу придумать больше. В конце концов, многое зависит от ситуации, и вам нужно принять собственное решение, что лучше всего для вас и вашего проекта.
Как ORM решает указанные выше вопросы. которые обычно используются для .net
Единственная известная мне .NET ORM, которая удовлетворяет почти все потребности .NET-проекта (за исключением менее известных поставщиков баз данных), - это NHibernate. Он был протестирован с множеством «устаревших» баз данных в множестве различных сценариев.
ORM Battle
Целый веб-сайт, посвященный анализу и сравнению различных продуктов .NET ORM (Object Relational Mapping)!
Имейте в виду, что даже веб-сайт ORMBattle только сравнивает около 7 или 8 ORM (хотя те, которые он сравнивает, кажется, делает это довольно тщательно, но см. отказ от ответственности ниже).
Согласно веб-сайту SharpToolBox , доступно около 40 ORM! Список продуктов ORM и их описания на веб-сайте SharpToolBox должны дать вам хорошее начало. Посмотреть здесь: Результаты поиска SharpToolBox для объектно-реляционного сопоставления
Учитывая, что практически каждый разработчик и потребности каждого приложения в доступе к данным могут различаться, найти полное сравнение между ними будет сложно. Вероятно, это причина того, что существует более 40 различных продуктов ORM, поскольку в мире ORM не существует универсального решения.
Кроме того, помните, что любые сравнения между продуктами ORM вполне могут быть: ошибочен », поскольку нельзя всегда быть уверенным, что различные функциональные возможности разных продуктов ORM предназначены для одних и тех же целей. Комментарий AJ к этому ответу ссылается на сообщение в блоге автора Ayende Rahien , который описывает именно это явление, когда ORMBattle сравнивал NHibernate с другими ORM.
Я думаю, что лучший подход - это посмотреть на тесты и прочитать описания каждой ORM, но не воспринимать эти вещи буквально, а лучше интерпретировать эти цифры на основе того, что должно делать ваше собственное приложение. Например, если ваше приложение в основном считывает и записывает записи базы данных по одной, вы, вероятно, будете использовать совершенно другой продукт ORM, нежели приложение, которому необходимо обрабатывать записи базы данных партиями.
Я не разработчик .net, но вам стоит попробовать nHibernate . Это .net версия современного ORM для Java. Я уверен, что это отличное решение и для .net, поскольку ist делает сопоставление объектов довольно простым, но при этом достаточно мощным, чтобы сопоставить объекты практически с любой схемой sql.