Я начал организовывать свой код сегодня в отдельные файлы.cs, и чтобы позволить методам, работающим с пользовательским интерфейсом, продолжать делать это, я бы создал код.cs под тем же пространством имен и открытым частичным именем класса, чтобы методы могли быть совместимым.
Мой заголовок выглядит так в четырех файлах, включая основной файл, который вызывает:
public shell()
Область заголовка файлов.cs, которые работают с пользовательским интерфейсом (и, кажется, вызывают этот новый конфликт):
using System; using System.Windows.Forms; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.IO; using System.Data.SqlServerCe; using System.Diagnostics; using System.Threading; using System.Collections.Specialized; using System.Net; using System.Runtime.InteropServices; using watin = WatiN.Core; using WatiN.Core.Native.InternetExplorer; using System.Web; namespace WindowsFormsApplication1 < public partial class shell : Form
Теперь, когда я пытаюсь отладить / просмотреть мое приложение (кстати, это приложение для Windows в Visual Studio 2010 Express), я получаю следующее сообщение об ошибке:
Уроки C# — 17 — Методы
Не содержит статический метод main, подходящий для точки входа
Я посмотрел в свойствах приложения в Application->Startup object, но он не предлагает мне никаких опций. Как я могу сообщить приложению начать с файла.cs, в котором есть мой InitializeComponent(); команда?
- Я смотрел вокруг до сих пор без решения.
- Свойства каждого файла.cs установлены на «Compile».
- Я не вижу файл App.xaml в моем обозревателе решений, но вижу файл app.config.
Я все еще очень новичок, и это моя первая попытка организовать метод с помощью кода на C#.
Источник: stackru.com
Ошибка компилятора CS5001
Эта ошибка возникает, если в коде, который создает исполняемый файл, не найден статический Main метод с правильной сигнатурой. Это также происходит, Main если функция точки входа , определена с неправильным регистром, например в нижнем регистре main . Сведения о правилах, применяемых к методу , см. в Main разделах Main() и Command-Line Arguments.
Main Если метод имеет модификатор async , убедитесь, что выбрана версия языка C# 7.1 или выше, и в качестве типа возвращаемого значения следует использовать Task или Task .
Метод Main является обязательным только при компиляции исполняемого файла, то есть при указании элемента exe или winexe параметра компилятора TargetType . Следующие типы проектов Visual Studio по умолчанию указывают один из этих параметров:
- Консольное приложение
- Приложение ASP.NET Core
- приложение WPF
- приложение Windows Forms
Пример
Следующий пример приводит к возникновению ошибки CS5001:
C# Framework .NET. #2 Структура простой программы. C#. Как работает Main()?
// CS5001.cs // CS5001 expected when compiled with -target:exe or -target:winexe public class Program < // Uncomment the following line to resolve. // static void Main() <>>
Источник: learn.microsoft.com
Не содержит статический метод main, подходящий для точки входа
Я начал организовывать мой код в день в отдельные файлы .cs, и для того, чтобы позволить методам, которые работают с пользовательским интерфейсом, продолжать делать это, я бы создал код .cs в том же пространстве имен и public partial class name, методы могут быть взаимозаменяемыми. Мой заголовок выглядит так в четырех файлах, включая мой основной файл ядра, который вызывает:
public shell()
Область заголовка файлов .cs, которые работают с пользовательским интерфейсом (и, похоже, вызывает этот новый конфликт):
using System; using System.Windows.Forms; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.IO; using System.Data.SqlServerCe; using System.Diagnostics; using System.Threading; using System.Collections.Specialized; using System.Net; using System.Runtime.InteropServices; using watin = WatiN.Core; using WatiN.Core.Native.InternetExplorer; using System.Web; namespace WindowsFormsApplication1 < public partial class shell : Form
Теперь, когда я пытаюсь отлаживать/просматривать мое приложение (BTW это приложение Windows в Visual Studio 2010 Express), я получаю это сообщение об ошибке:
Не содержит статический «основной» метод, подходящий для точки входа
- Я уже огляделся без решения.
- В свойствах каждого файла .cs установлено значение «Компилировать».
- Я не вижу файл App.xaml в своем обозревателе решений, но вижу файл app.config.
Я все еще очень новый, и это моя первая попытка организовать метод с кодом С#.
Источник: overcoder.net