![](/img/trans.png)
[英]Problems embedding IronPython in C# (Missing Compiler required member 'Microsoft.CSharp.RuntimeBinder.Binder.InvokeMember'
[英]Missing compiler required member 'microsoft.csharp.runtimebinder.binder.convert'
我第一次使用 Excel 用 Selenium WebDriver 讀取 c# 中的數據,但是當我構建這段代碼時,它彈出一個錯誤:
“缺少編譯器所需的成員‘microsoft.csharp.runtimebinder.binder.convert’”
使用excel的代碼如下紅色標注:
excel.Application x1Appl = new excel.Application();
excel.Workbook x1WorkBook = x1Appl.Workbooks.Open(@"C:\app\o\SearchBy.xlsx");
excel._Worksheet x1WorkSheet = x1WorkBook.Sheets[1];
請讓我知道缺少什么? 謝謝!
Office 的引用程序集通過dynamic
返回類型公開。 為了能夠編譯,您需要添加對Microsoft.CSharp.dll
的引用。
如果您的項目面向 .Net Core 或 .Net Standard,則安裝Microsoft.CSharp NuGet 包將解決此錯誤。
我正在使用 Visual Studio 2017 版本 15.7.1(不確定這是否重要,但在我更新后似乎出現了此錯誤)。 我有一個針對 .NET Framework 3.5 的項目。 因此,除了為添加 Microsoft.CSharp 提供的其他答案外,我還需要將此項目更新到 .NET Framework 4.5,然后當我添加引用時,Microsoft.CSharp 出現在程序集下。 在此之前,我不得不找到DLL的絕對路徑,這似乎不起作用。
對於無法升級到 4.5 的用戶,您可以嘗試將 csproj 文件中所有互操作引用的 EmbedInteropTypes 設置為 False,如下所示: http ://answers.flyppdevportal.com/MVC/Post/Thread/b1554cdd-ad9e- 4453-b4d6-8eb03da175ea?category=visualstudiogeneral
右鍵單擊項目名稱(在解決方案資源管理器中),在程序集中添加引用:Microsoft.CSharp,然后再次右鍵單擊並清理。 僅此而已。
我也有這個問題。 如果您右鍵單擊並選擇“屬性”(突出顯示項目時),則會有一個復選框顯示:自動生成綁定重定向。 這為我修好了。
我使用的是 Visual Studio 2017,它是一個 C# 類庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.