2012-01-13 1 views
4

Я хочу использовать Oracle XE DB в моем проекте ASP.NET MVC. Я установил Oracle 11g XE на том же компьютере, где работает VS. Установка завершена успешно в C: \ oraclexe. Все, как ожидалось, я смог подключиться к БД через Server Explorer, используя поставщик доступа к данным по oracle по умолчанию. Но я хочу использовать ODP.NET, поэтому я установил ODP.NET + ODT в C: \ app. Вот первая запутанная вещь. Структура каталога C: \ oraclexe .. \ server и C: \ app .. \ client_1 аналогична. Оба имеют папку NETWORK \ ADMIN, где находится Tnsnames.ora. Я понимаю, что клиент используется для подключения к базе данных, но:Понимание базы данных Oracle и установки ODAC

  1. Какое Tnsname.ora будет использоваться для соединения с базой данных?
  2. Oraclexe также содержит папку odp.net, где находится Oracle.DataAccess.dll. Если установка сервера идет с odp.net, почему мне нужно установить ODAC? Server Explorer в VS предложил мне драйверы ODP.NET для подключения только после установки ODAC.
  3. ODAC поставляется с Oracle Instant Client. Когда использовать Oracle Client и Oracle Instant Client? Если я решаю для Oracle Client, и тогда я установлю ODAC для подключения, будет ли он также устанавливать Instant Client, который является частью ODAC?
  4. Наконец, после установки сервера и клиента, VS 2010 все еще не дает мне провайдеров Oracle в конфигурации ASP.NET

ответ

2

Oracle XE является своего рода особенным в том, что вы, как правило, установить сервер и клиент на той же машине. Логично, что они разделены, но это немного усложняет понимание. По этой причине я буду ссылаться на других экспертов.

  1. The folks at ORAFAQ have information about the TNSNAMES.ORA file. Моя личная стратегия, чтобы сделать все мои TNSNAMES.ORA файлы одинаковы, поэтому нет opportinity путаницы.

  2. ODP.NET для ... .NET использовать, в то время как ODAC является «родным» (OLE) и предоставляет больше инструментов, чем у вас может быть только с ODP.NET. Используйте все, что работает для ваших нужд.

  3. В большинстве случаев вы будете распространять Мгновенный клиент. Полный клиент более полезен для разработчиков. Подробнее см. В разделах documentation и FAQs. Вы можете иметь несколько клиентов на одной машине, поэтому я не уверен, в чем проблема.

  4. Перезапустить машину? Вы добавили соответствующую библиотеку/библиотеки в свою среду?

+2

4 ... продолжение. Вам необходимо ссылаться на Oracle.DataAccess.dll в вашем проекте. Файл можно найти в папке ODP.NET \ bin в вашем пути Oracle. Затем вы можете добавить 'using Oracle.DataAccess.Client;' в верхней части файла. –