Sharepoint 2010 с ошибкой Excel 2010 - PullRequest
0 голосов
/ 06 июля 2011

Это первый вопрос для меня на этом сайте, и я бы хотел, чтобы вы решили мою проблему:)

Я создаю небольшую утилиту, которая читает из списка SharePoint и из листа Excel, чтобы отобразить поля для выполнения некоторого вида миграции данных из Excel в список SP, Утилита сначала заполняет списки SP из SharePoint в зависимости от предоставленного URL, затем загружает столбцы для выбранного списка в сетку данных, затем читает таблицу Excel и заполняет все столбцы в другой сетке данных:

  • Первая проблема, с которой я столкнулся, заключалась в том, что я не смог добавить Microsoft.Sharepoint.dll . Эта проблема была решена путем изменения .Net Framework с .NET Framework 4 Client Profile на .NET Framework 3.5 , так как я получил следующую ошибку:

Ошибка 1 Тип или имя пространства имен «SharePoint» не существует в пространстве имен «Microsoft» (отсутствует ссылка на сборку?)

Пока что SharePoint работает нормально, теперь при попытке прочитать из листа Excel я получаю сообщение об ошибке ниже Ошибка:

Я использовал соединения OLEDB и ODBC, как показано ниже, но ни одно из них не работало под x64:

string sConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0; Источник данных =" + this.textBox3.Text + "; Расширенные свойства = 'Excel 8.0; HDR = Да; IMEX = 1'";

Поставщик «Microsoft.Jet.OLEDB.4.0» не зарегистрирован на локальном компьютере.

string sConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0; Источник данных =" + this.textBox3.Text + "; Расширенные свойства = Excel 12.0;";

Поставщик «Microsoft.ACE.OLEDB.12.0» не зарегистрирован на локальном компьютере.

string sConnectionString = "Driver = {Драйвер Microsoft Excel (* .xls, * .xlsx, * .xlsm, * .xlsb)}; DBQ =" + this.textBox3.Text + ""; ОШИБКА [IM002] [Microsoft] [Диспетчер драйверов ODBC] Не найдено имя источника данных и не указан драйвер по умолчанию

После некоторого поиска я прочитал, что нам нужно создать это приложение под 86x, чтобы решить проблему с Excel, я сделал это, и проблема была решена для Excel, но теперь SharePoint не работает и выдает сообщение об ошибке ниже:

Веб-приложение на http://localhost/ITO не может быть найденный. Убедитесь, что вы ввели URL правильно. Если URL должен быть обслуживающий существующий контент, система администратору может понадобиться добавить новый запросить привязку URL к предполагаемому применение.

Как видите, столбцы Excel заполняются здесь, но SharePoint выдает ошибку !! Любая идея, как позволить им обоим работать в одном приложении ??

Ответы [ 3 ]

1 голос
/ 06 июля 2011
  1. Microsoft.SharePoint.dll - это только для приложений, работающих на сервере SharePoint, а не для приложений, работающих на клиентском компьютере.Для клиентских приложений используйте клиентскую объектную модель или веб-службы.

  2. При использовании библиотек DLL SharePoint должно быть приложение x64, а не x86 (по умолчанию дляКонсольные приложения) или AnyCPU - SharePoint 2010 имеет 64-разрядную только .(Разумеется, клиентский OM работает на 32-разрядной версии)

  3. При использовании DLL-библиотек SharePoint используйте .net 3.5, но вы уже поняли:)

  4. Технически, использование Microsoft.SharePoint.dll вне SharePoint (веб-сайт или задание таймера) также не поддерживается - хотя в большинстве случаев это работает.

0 голосов
/ 25 октября 2011

Я установил MS Office для 64 бит, и это решило мою проблему :)

0 голосов
/ 06 июля 2011

Я бы начал с того, что Sharepoint 2010 необходимо запустить в 64-битной среде и в .net 3.5. Разберитесь, и ваш sharepoint будет работать. Возможно, вам придется установить 64-битную версию Excel, чтобы она работала на той же платформе.

То, что у вас сейчас есть, это горячая версия 3.5 и 4.0, а также 64-битная и 32-битная части, которые никогда не будут работать вместе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...