osc*_*tin 5 c# intellisense enums nullable visual-studio-2013
在C#中键入以下代码:
ConsoleColor c;
c =
Run Code Online (Sandbox Code Playgroud)
完成输入后c =,intellisense会ConsoleColor按预期显示枚举中的值列表.现在将其更改为可为空的:
ConsoleColor? c;
c =
Run Code Online (Sandbox Code Playgroud)
键入之后=,你会期望intellisense像以前一样做,但事实并非如此.我甚至无法调用枚举列表CTRL+SPACE.为了得到它的智能感知正常调用,我必须键入c.Value =,但只是导致生成错误,因为你不能赋值给一个只读属性.奇怪的是,它在VB.NET中按预期工作:
Dim c As ConsoleColor?
c = ConsoleColor.Black
Run Code Online (Sandbox Code Playgroud)
这只是一个错误/怪癖吗?
编辑你可能会忽略我的回答,因为我正在使用 ReSharper。我有时会忘记这一点。
这是一件奇怪的事情:在 VS2012 中,如果我输入以下内容:
ConsoleColor? c;
c=
Run Code Online (Sandbox Code Playgroud)
我没有得到 IntelliSense。如果我输入以下内容:
ConsoleColor? c;
c =
Run Code Online (Sandbox Code Playgroud)
我确实得到了 IntelliSense。c对于那些难以辨别差异的人来说,差异在于和之间的空格=。我还需要在=IntelliSense 弹出建议之前输入另一个空格。
| 归档时间: |
|
| 查看次数: |
183 次 |
| 最近记录: |