2010-07-08 3 views
3

Справочная информация:Как подключиться к Informix с .NET?

  • Visual Studio 2010 (.NET Framework 4.0)
  • Informix сервер 7,31
  • Informix ClientSDK 3,50 TC7 (Windows 32-бит) был установлен как хорошо.

Я попытался предложить несколько способов подключения к серверу Informix, но все они не работают для меня по какой-либо причине. Я просмотрел такие статьи, как Connect Informix with ADO.Net, и я использовал ConnectionStrings.com для создания строки подключения.

Когда я иду в Visual Studio я сделать следующее:

  1. Server Explorer
  2. правой кнопкой мыши на Connections данных> Добавить соединение ...
  3. Microsoft ODBC Data Source | Поставщик данных .NET Framework для ODBC
  4. Используйте строку подключения (скопированную/вставленную с использованием сайта ConnectionString).
  5. Пров.соед

РЕЗУЛЬТАТ: ОШИБКА [IM002] [Microsoft] [ODBC Driver Manager] Источник данных не найден и не указан драйвер по умолчанию.

  1. Обозреватель серверов
  2. правой кнопкой мыши на Connections данных> Добавить соединение ...
  3. Другое | Поставщик данных .NET Framework для ODBC
  4. Используйте строку подключения (скопированную/вставленную с использованием сайта ConnectionString).
  5. Пров.соед

РЕЗУЛЬТАТ: ОШИБКА [IM002] [Microsoft] [ODBC Driver Manager] Источник данных не найден и не указан драйвер по умолчанию.

  1. Обозреватель серверов
  2. правой кнопкой мыши на Connections данных> Добавить соединение ...
  3. Другое | Поставщик данных .NET Framework для OLE DB
  4. OLE DB Provider: IBM Informix OLE DB Provider Ссылки
  5. данных ...

РЕЗУЛЬТАТ: Указанная процедура не может быть найден. (Исключение из HRESULT: 0x8007007F)

Кроме того, я не был уверен, что действительно заполнить там ...

О, и я даже пытался использовать sample code, представленную в first article, подставляя в моей информации о соединении:

  • ВЕДУЩИЙ: IP сервера
  • SERVICENUM: Порт Номер
  • SERVER : серверы имен
  • DATABASE: база данных Я работаю над
  • USER: идентификатор пользователя
  • PASS: пароль

Пример кода Скачал/изменено:

using System; 
using IBM.Data.Informix; 

namespace IfxAdoPres.Basics { 
    public class BasicConnection { 
     const string HOST = "192.168.OBFUSCATED"; 
     const string SERVICENUM = "5000"; 
     const string SERVER = "myServer"; 
     const string DATABASE = "myDatabase"; 
     const string USER = "myUserID"; 
     const string PASSWORD = "myPassword"; 

     public IfxConnection conn = new IfxConnection(); 
     public BasicConnection() {} 

     public void MakeConnection() { 
      string ConnectionString = "Host = " + HOST + "; " + 
       "Service=" + SERVICENUM + "; " + 
       "Server=" + SERVER + "; " + 
       "Database=" + DATABASE + "; " + 
       "User Id=" + USER + "; " + 
       "Password=" + PASSWORD + "; "; 

      conn.ConnectionString = ConnectionString; 
     } 

     public void CloseConnection() { 
      conn.Close(); 
     } 
    } 
} 

Я получаю ошибку на линии conn.ConnectionString = ConnectionString; Исключение содержит «Недопустимый аргумент» без InnerException (в основном очень бесполезный). CallStack это:!!

  • Basics.exe IfxAdoPres.Basics.BasicConnection.MakeConnection()
  • Basics.exe IfxAdoPres.Basics.Test.Main (строка [] агдз = {строка [0]})
  • [External Code]

Я застрял, и понятия не имею, что делать ...: -/

ответ

1

Ну, я вернулся к статье: http://www.ibm.com/developerworks/data/library/techarticle/dm-0510durity/

После удаления всего и начала работы свежий демо-код, похоже, работал после установки IBM Informix Client SDK 3.5 и с помощью Setnet32 для настройки моих настроек.

У меня должно было быть что-то поврежденное, так как у меня было несколько разных версий драйвера Informix, установленных на начальном этапе.

+0

Я знаю, что это супер старое сообщение, и вы можете не помнить, но у меня такие же проблемы. Вы помните, если бы вам пришлось добавить IBM.DATA.Informix в свои проекты? В дикой природе не так много информации ... Я установил последний клиентский sdk и попытался настроить соединение с макетами, чтобы попасть в пробную кнопку catch, которая должна ударить по catch, но она выдает ту же ошибку, что и у вас, что неверно. аргумент не имеет для меня никакого смысла. – Bowenac

Смежные вопросы