[英]Option Strict On disallows implicit conversions between String and Object {String}
[英]“Option Strict On disallows implicit conversions” inconsistent enforcement
我試圖理解為什么VB.NET項目中的Option Strict On強制執行不會在兩個項目中引發錯誤BC30512而在另一個項目中會引發錯誤。 下面是一個示例代碼行,它使用配置1觸發錯誤,但不會觸發配置2或3的錯誤。
Dim bufferedPolygon As ESRI.ArcGIS.Geometry.IGeometry = New ESRI.ArcGIS.Geometry.Polygon
此外,如果我實例化托管類而不是coclass,則在任一配置中都不會觸發錯誤(請參閱以下行):
Dim bufferedPolygon As ESRI.ArcGIS.Geometry.IGeometry = New ESRI.ArcGIS.Geometry.PolygonClass
不同版本的ArcMap決定了該框架的目標版本。 有關其他背景,ArcObjects文檔的COM到.NET類型轉換是相關的: 在.NET中使用ArcObjects(基於COM)(ArcObjects .NET 10.4 SDK)
為什么在配置1中觸發錯誤而在配置2或3中沒有觸發? 為什么在使用托管類而不是coclass實例化時,配置1中是否觸發了錯誤?
鏈接到dotnet / roslyn github存儲庫提交的問題。 https://github.com/dotnet/roslyn/issues/13314
謝謝謝
此時,它似乎(正如Hans Passant在原帖中的評論中所建議的)這確實是Visual Studio 2015中Roslyn編譯器的一個錯誤。我在dotnet / roslyn GitHub存儲庫中打開了一個問題,它已經被標記了一個錯誤並分配給了一個團隊成員。 在調查問題時,這種情況可能會發生變化。
問題的鏈接和其他疑難解答信息是https://github.com/dotnet/roslyn/issues/13314
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.