System.IO.IOException: «Неверный дескриптор» при использовании окна вывода Visual Studio - PullRequest
0 голосов
/ 19 февраля 2020

Я занимаюсь разработкой. Net Базовое MVC 2 приложение в Visual Studio Community 2019. Я хочу измерить время нескольких операций в конструкторе (как в примере ниже) в среде разработки. Я выбираю System.Diagnosti c для измерения и System.Console, чтобы показать. У меня есть конструктор для разбивки на страницы:

 public PagedList(IQueryable<T> query, QueryOptions options = null)
 {
     CurrentPage = options.CurrentPage;
     PageSize = options.PageSize;
     Options = options;

     if (options != null)
     {
         if (!string.IsNullOrEmpty(options.OrderPropertyName))
         {
             query = Order(query, options.OrderPropertyName,
             options.DescendingOrder);
         }

         if (!string.IsNullOrEmpty(options.SearchPropertyName) && !string.IsNullOrEmpty(options.SearchTerm))
         {
             query = Search(query, options.SearchPropertyName,
             options.SearchTerm);
          }
     }

     Stopwatch sw = Stopwatch.StartNew();
     Console.Clear(); //throw exception
     //Example operations to measure
     TotalPages = query.Count() / PageSize;
     AddRange(query.Skip((CurrentPage - 1) * PageSize).Take(PageSize));

     Console.WriteLine($"Query Time: {sw.ElapsedMilliseconds} ms"); //Seems to does not work
 }

Я ожидал результата в окне вывода Visual Studio, но на Console.Clear() У меня есть исключение System.IO.IOException: 'Invalid handle'. Когда я комментирую это, у меня нет никаких исключений, но Console.WriteLine также не работает. Я запустил VS с правами администратора. Как работать с окном вывода Visual Studio?

Я добавляю, что я вызываю этот конструктор через контроллер:

public IActionResult Index(QueryOptions options) => View(repository.GetCategories(options));

, а GetCategories:

PagedList<Category> GetCategories(QueryOptions options);
...