В настоящее время я пишу о динамической типизации, и я приведу пример взаимодействия Excel. Раньше я почти ничего не делал в офисе, и это видно. Учебник MSDN Office Interop для С# 4 использует интерфейс _Worksheet
, но также интерфейс Worksheet
. Я не знаю, в чем разница.
В моем абсурдном простом демонстрационном приложении (показанном ниже) работает нормально - но если лучшая практика диктует тот или иной, я бы предпочел использовать его соответствующим образом.
using System;
using System.Linq;
using Excel = Microsoft.Office.Interop.Excel;
class DynamicExcel
{
static void Main()
{
var app = new Excel.Application { Visible = true };
app.Workbooks.Add();
// Can use Excel._Worksheet instead here. Which is better?
Excel.Worksheet workSheet = app.ActiveSheet;
Excel.Range start = workSheet.Cells[1, 1];
Excel.Range end = workSheet.Cells[1, 20];
workSheet.get_Range(start, end).Value2 = Enumerable.Range(1, 20)
.ToArray();
}
}
Я пытаюсь избежать глубокого погружения в совместимость COM или Office, просто выделив новые возможности С# 4, но я не хочу ничего делать, действительно немой.
(Возможно, что-то действительно, действительно немое в коде выше, и в этом случае, пожалуйста, дайте мне знать. Использование отдельных стартовых/конечных ячеек вместо "A1: T1" преднамеренно - проще видеть, что это действительно, диапазон из 20 клеток. Все остальное, вероятно, случайное.)
Итак, следует ли использовать _Worksheet
или Worksheet
и почему?