属性中表达式正文的已知问题



我在使用Visual Studio 2017 RC的最新ReSharper版本时遇到问题。

ReSharper的编辑告诉我,它无法解析像var这样的符号或像public或void这样的标记

不确定,但事实证明,属性中使用的表达式主体是根本原因。

例:

public double PlayingProgress
{
    get => _playingProgress;
    set => SetProperty(ref _playingProgress, value);
}

如果使用普通括号而不是表达式正文,ReSharper 似乎不再有问题,因为红色标记区域消失了。

这是一个已知问题,还是还有其他已知原因的事情?

是否有已知的解决方法(我已经尝试清除缓存并取消/启用 ReSharper)?

如果这个新的 C# 7.0 功能不能与 ReSharper 一起使用,那就太糟糕了。

根据这篇博文,最新版本的ReSharper(2016.3)具有"对C# 7的早期支持"(强调我的)。这意味着并非所有 C# 7 功能现在都可以正常工作(这篇文章明确提到了一些受支持的功能,但没有提到表达式体的 getter 和 setter)。据推测,这将在以后的版本中修复,可能是VS 2017的RTM版本发布时发布的版本。

考虑到 C# 7 仍在开发中,我认为您不应该期望像 ReSharper 这样的工具提供全面支持。

最新更新