1
我注意到,依賴一個.NET核心應用中,有Microsoft.CSharp
和Microsoft.VisualBasic
,用幾乎相同的依賴關係:爲什麼.NET Core應用程序需要C#和VB程序集?
我想更好地瞭解:
- 爲什麼(看起來像)特定於語言的DLL首先是需要的;
- 爲什麼這兩個DLL都是必需的。
我注意到,依賴一個.NET核心應用中,有Microsoft.CSharp
和Microsoft.VisualBasic
,用幾乎相同的依賴關係:爲什麼.NET Core應用程序需要C#和VB程序集?
我想更好地瞭解:
爲什麼(看起來像)特定於語言的DLL首先需要;
它們存在以支持語言特定的功能。在C#的情況下,這主要是爲dynamic
。在VB的情況下,這主要是針對VB特定的成員,如AscW
或vbCrLf
(也可以從C#使用)以及VB編譯器使用的某些類型。
爲什麼這兩個DLL都是必需的。
因爲,至少在理論上,包含C#和VB包的Microsoft.NETCore.App
包是語言中立的。儘管在實踐中,VB目前不支持.Net Core。而且F#(支持)有它自己的包,默認情況下不包含它。