nmeri17 Ответов: 1

Программа не содержит статического метода "main", подходящего для точки входа


Я начал получать ошибку выше после рефакторинга кода, вытаскивая дочерние папки проекта в корень каждого проекта и переименовывая пространства имен, чтобы отразить это изменение.

Я неоднократно устанавливал основной проект, содержащий оболочку и загрузчик, в качестве стартового проекта, но решение, похоже, даже не признает присутствия prism или того, что я намереваюсь запустить решение, а не явно устанавливать Main метод.

Что я уже пробовал:

Я просмотрел примеры проектов prism из msdn, и там тоже нет упоминания об основном методе.

Я перечитал документы, а также это https://www.dmcinfo.com/latest-thinking/blog/id/9295/a-properly-pleasing-prism-primer--part-2-the-shell и несколько потоков stackoverflow, но ни один из них, похоже, не обращается к программам prism, ищущим основной метод.

Однако я заметил, что в свойствах проекта одного из примеров проектов в разделе startup object класс приложения появляется в раскрывающемся списке (хотя он все равно не задан в качестве объекта запуска).

Я загрузил решение на этот диск. Спасибо
https://drive.google.com/open?id=1TEBjci71xGyAQaklczXGf5BM84oZK4aL

1 Ответов

Рейтинг:
8

Dirk Bahle

Ваш файл SchoolPrism .proj выглядит странно, потому что он содержит пустое поле

StartupObject
метка:

<PropertyGroup>
  <StartupObject>
  </StartupObject>
</PropertyGroup>


Я не могу проверить это прямо сейчас, но вы можете попробовать установить:
1) App.xaml в опции start-up project или
2) Удалите тег (так как он должен найти приложение.xaml по умолчанию) или
3) воссоздайте проект SchoolPrism только на этот раз, убедившись, что он основан на шаблоне приложения WPF (возможно, вы использовали шаблон Winforms?)


nmeri17

Привет. У меня есть все три ваших решения и результаты таковы:
3) проект является действительным проектом WPF, в соответствии с этим https://www.mztools.com/Articles/2008/MZ2008017.aspx
2) не сработало
1) Добавлен Школьный Приз.Приложение и оно больше не запрашивает основной метод. Раскрывающийся список запуска также идентифицирует его.

Приложение действительно работает сейчас, но все равно вылетает с ошибкой "error CS1558: 'App' не имеет подходящего статического основного метода". Поэтому я исправил это с помощью принятого здесь ответа https://stackoverflow.com/questions/577298/program-does-not-contain-a-static-main-method-suitable-for-an-entry-point. Большое спасибо, Дирк!