Visual Studio 刚刚开始向我扔“ error BC30037: Character is not valid.
”(在验证网站时),无论我在我的 VB.NET 3.5 项目中的任何地方使用可空运算符的任何地方。这发生在几个月前的一位同事身上,但他不记得他是如何解决的。
例如,如果我更改Double?
to的每个实例Nullable(Of Double)
,它编译得很好,并且在同一解决方案中的其他项目中的其他可空值用法继续正常工作。
我尝试清理解决方案,关闭 Visual Studio,删除临时 ASP.NET 文件,然后重新启动 Visual Studio 无济于事。
还有什么我可以尝试的吗?
添加:
我想我会提到委托语法也失败了。我有这段代码:
Dim hasSkips As Boolean = payments.Where(Function(p) p.Code = "SKIP").Count > 0
Dim isRegular As Boolean = Not hasSkips
payments
是一个IList(Of Payment)
。该Payment
对象有一个名为 的字符串属性Code
。Visual Studio 中没有任何验证错误或任何可见的东西,使它认为它不知道那行代码的作用。Intellisense 工作得很好,但编译器符合语法。上面两行代码分别伴随以下两个错误:
error BC30201: Expression expected.
error BC30451: Name 'hasSkips' is not declared.
似乎 Visual Studio 不知道它应该知道的 VB.NET 3.5 特性。