【问题标题】:How to make AddRange type-safe如何使 AddRange 类型安全
【发布时间】:2021-10-17 19:46:47
【问题描述】:

我在vb.net 中有这个虚拟代码

Sub dummy()
    Dim a = New List(Of XDocument)
    Dim b = New List(Of Net.Mail.MailAddress)
    b.AddRange(a)
End Sub

显然,这永远行不通。但编译器会忽略它。

如何强制VS 在编译时标记这个?

谢谢

【问题讨论】:

    标签: vb.net visual-studio generics compile-time


    【解决方案1】:

    编译器只允许这样做,因为你有Option Strict Off。您基本上应该在项目级别始终使用Option Strict On,并且仅在您实际需要使用后期绑定的极少数情况下在文件级别设置Off。即使这样,您也应该只在那些实际需要它的特定文件中设置它Off,并且您应该使用部分类将这些文件中的代码保持在绝对最低限度。

    在您的项目属性中设置Option Strict On,编译器会正确地将其标记为错误代码,并且您很有可能会看到其他问题区域也突出显示。您还应该在 VS 选项中将其设置为 On,以便将来所有项目默认为 On

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多