dotnet/roslyn

Invalid IDE0059 When using constant inside static local function

開放

#44,948 建立於 2020年6月8日

 (3 則留言) (2 個反應) (0 位負責人)C# (4,257 個分叉)batch import
Area-IDEBugFeature - IDE0059help wanted

倉庫指標

星標
 (20,414 顆星)
PR 合併指標
 (平均合併 6天 17小時) (30 天內合併 256 個 PR)

描述

Version Used: Visual Studio 16.6.1

Steps to Reproduce:

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            var local = FormatDate(DateTime.Now);
            var utc = FormatUtcDate(DateTime.Now);
            Console.WriteLine("{0} -> {1}", local, utc);
            Console.ReadKey();

            const string DatePickerFormat = "MM/dd/yyyy hh:mm";
            static string FormatDate(DateTime? date) => date?.ToString(DatePickerFormat);
            static string FormatUtcDate(DateTime? date) => date?.ToUniversalTime().ToString(DatePickerFormat);
        }
    }
}

Expected Behavior: No IDE0059 notice will be shown for DatePickerFormat because it is used by the static local functions FormatDate and FormatUtcDate.

Actual Behavior: An IDE0059 notice is shown for DatePickerFormat .

貢獻者指南