Почему мы указываем System.Reflection.Missing.Value? - PullRequest
1 голос
/ 12 марта 2020

xlWorkBook.SaveAs ("C: \ examples \ employee.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel. ;

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

1 Ответ

2 голосов
/ 12 марта 2020

Вы вызываете компонент COM (Excel), используя взаимодействие COM. COM - это совершенно другая (и более старая) среда для. Net. Чтобы помочь вам вызвать компонент COM, Net создает Runtime Callable Wrapper (RCW), который является прокси-классом, который позволяет вам использовать управляемый код C# для вызова COM. Но реализации C# и COM необязательных параметров несовместимы друг с другом - компилятор C# не знает, как сопоставить параметр C# по умолчанию с параметром COM по умолчанию. Таким образом, для параметров COM по умолчанию мы должны явно дать им System.Reflection.Missing.Value.

...