2012-01-16 4 views
1

Я решил начать работу над приложениями в стиле Windows Metro с предварительным просмотром Windows Developer, после нескольких разочаровывающих событий.Почему однострочное приложение с System.Console.WriteLine дает мне синтаксическую ошибку?

Итак, я запускаю Visual Studio и BAM! Справа, когда я пытаюсь ввести этот код

System.Console.WriteLine(""); 

Это дает мне красную squiggly под «Консолью».

Так что я попробовать что-то другое:

string text = System.IO.File.ReadAllText(@"C:\Users\Public\TestFolder\WriteText.txt"); 

и это не удается, как хорошо! Красная squiggly под файлом.

Почему эта ошибка появляется? Весь этот код должен работать нормально! Или я делаю основную ошибку?

+0

Что такое красная squiggly? – Abel

+3

Нет консоли и очень пустого пространства имен System.IO для приложений в стиле Metro. Я предполагаю, что вы видите, действительно правильно. – Joey

+1

Abel: красная, волнистая подчеркивание, указывающая на синтаксическую ошибку в подчеркнутом положении. Очень распространено в графических IDE. – Joey

ответ

10

Metro applications use a subset of the .Net Framework API. В этой версии System.Console и System.IO.File не существует.

Из MSDN, «Заменить System.IO.File.ReadAllText метод с методом, который использует члены ввода/вывода асинхронного, например:»

public static async Task<string> ReadAllText(StorageFile file) 
{ 
    IInputStream inputStream = await file.OpenForReadAsync(); 
    using (Stream stream = inputStream.AsStream()) 
    using (StreamReader reader = new StreamReader(stream)) 
    { 
     return await Task.Run(() => reader.ReadToEnd()); 
    } 
} 
+0

Ugh. Я думаю, что нет никакого способа обойти это, кроме всего переписывания всего. Благодарю. – JavaAndCSharp

+5

Чтобы быть честным с .Net, использование 'Console' не имеет смысла в графическом интерфейсе. – user7116

+1

Многие из вещей, которые кажутся простейшей возможной вещью, в том числе классическим Hello World, - это всего лишь самое простое в мире Metro. Поместите элемент управления в свою форму (например, кнопку) и сделайте что-нибудь в обработчике (но не используйте окно сообщения или пишите в файл.) Измените текст ярлыка, например. Это твой привет Метро. –

0

Windows 8 Metro приложения не имеют консоли (как консоль в графической среде не имеет смысла), но вы можете получить некоторые функциональные возможности консоли с сторонними библиотеками, такими как Console Class for Metro Apps

 Смежные вопросы

  • Нет связанных вопросов^_^