Проект определенно находится в .net 8.0, а не в другой версии. Файл.
Код: Выделить всё
using System.Diagnostics;
public class Program
{
public static void Main()
{
Debug.WriteLine("Hello World");
}
}
< /code>
Я щелкните правой кнопкой мыши отладки в Visual Studio и нажмите «Перейти к определению». Это приведет меня к файлу, который выглядит так: < /p>
#define DEBUG
// usings
namespace System.Diagnostics
{
///
/// Provides a set of properties and methods for debugging code.
///
public static partial class Debug
{
private static volatile DebugProvider s_provider = new DebugProvider();
public static DebugProvider SetProvider(DebugProvider provider)
{
ArgumentNullException.ThrowIfNull(provider);
return Interlocked.Exchange(ref s_provider, provider);
}
//more code...
< /code>
Это первая функция там, и она общедоступна. Нет никаких причин, по которым мы не должны быть в состоянии его использовать.using System.Diagnostics;
public class Program
{
public static void Main()
{
Debug.WriteLine("Hello World");
Debug.SetProvider(new DebugProvider());
}
}
< /code>
Это бросает следующие ошибки сборки: < /p>
CS0117 'Debug' does not contain a definition for 'SetProvider'
CS0246 The type or namespace name 'DebugProvider' could not be found (are you missing a using directive or an assembly reference?)
Подробнее здесь: https://stackoverflow.com/questions/796 ... ource-code
Мобильная версия