Я занимаюсь разработкой. 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);