В чем разница между Microsoft.Excel.Office.Core и Microsoft.Office.Interop.Excel? - PullRequest
2 голосов
/ 01 февраля 2012

Я должен прочесть создание надстроек для Excel и т. Д., И я начинаю задумываться, в чем разница между двумя пространствами имен?

В каждом прочитанном уроке используется Interop.Но в книгах они в основном используют Office - почему существуют два пространства имен, содержащие более или менее одинаковые классы, но отличающиеся друг от друга?

Есть ли какая-либо ссылка, которая облегчает это?понимать?

Ответы [ 2 ]

1 голос
/ 01 февраля 2012

Я думал, Office - это официальные PIA, поставляемые Microsoft, но я только что скачал 2010 для проверки, но это не так

Нет доступных PIA для Office 2000, начиная с Office XP и далее, но я не вижу ссылок в документах на типы пространств имен, о которых вы говорите.

Вы уверены, что это не просто псевдоним пространства имен, который кто-то создал, а именно

using Microsoft.Excel.Office = Microsoft.Excel.Interop;

хотя, вполне понятно, почему кто-то так поступил, мне не под силу!

EDIT Я только что создал скелет надстройки Excel в VS2010, и он имеет следующие псевдонимы:

using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;

Это объясняет, что вы видите?

0 голосов
/ 01 февраля 2012

Исходя из моего собственного опыта, Microsoft.Office.Interop.Excel содержит все объекты и методы Excel, такие как Workbook, Excel Addins и Application.WorksheetFunction.Microsoft.Office.Core содержит те, которые применяются в Office, такие как CommandBarButtons, FileDialogs и COM-надстройки.Все переменные Mso, такие как MsoAlertType и MsoColorType, также находятся в последнем.

Я никогда не видел Microsoft.Excel.Office.Core, о котором говорится в заголовке вашего вопроса.

...