J'ai commencé à organiser mon code quotidien dans des fichiers .cs séparés, et pour permettre aux méthodes qui fonctionnent avec l'interface utilisateur de continuer à le faire, j'ai créé le code .cs sous le même espace de noms et le même nom de classe partielle publique afin que les méthodes puissent être interopérables.
Mon en-tête se présente comme suit dans quatre fichiers, dont mon fichier principal qui appelle :
public shell()
{
InitializeComponent();
}
Zone d'en-tête des fichiers .cs qui fonctionnent avec l'interface utilisateur (et qui semblent être à l'origine de ce nouveau conflit) :
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
{
Maintenant, quand j'essaie de déboguer/afficher mon application (BTW c'est une application Windows dans Visual Studio 2010 Express) j'obtiens ce message d'erreur :
Ne contient pas de méthode statique "main" convenant à un point d'entrée
J'ai regardé dans les propriétés de l'application dans Application->Objet de démarrage, mais il n'y a pas d'options. Comment puis-je informer l'application de commencer au fichier .cs qui contient ma commande InitializeComponent(); ?
- J'ai cherché jusqu'à présent sans trouver de solution.
- Les propriétés de chaque fichier .cs sont définies sur "Compiler".
- Je ne vois pas de fichier App.xaml dans mon explorateur de solutions mais je vois un fichier app.config.
Je suis encore très novice et c'est ma première tentative de méthode d'organisation avec du code c#.
12 votes
Avez-vous une méthode principale ?
0 votes
Pour être honnête, je ne vois nulle part dans mon code une méthode appelée Main. Je travaille sur ce projet depuis quelques mois maintenant.
1 votes
Vous avez besoin d'une méthode statique appelée
main
avec la signature correcte. C'est ainsi que le compilateur sait comment démarrer votre programme.0 votes
Existe-t-il un moyen de programmer manuellement le point de départ de la solution ? Je ne comprends pas comment il ne peut pas trouver une méthode statique "Main" alors que je ne trouve aucune instruction dans le code lui indiquant de chercher une méthode "Main". Je suis très novice en c#. --- éditer - @David Hefferman , Pourriez-vous préciser ce que vous entendez par "la bonne signature" ?
0 votes
Pour indiquer au compilateur où commence votre programme, vous ajoutez une fonction statique nommée
main
avec la signature appropriée.5 votes
Essayez d'ajouter quelque chose comme ceci à votre projet
[STAThread] static void Main(string[] args) { Application.Run(new shell()); }
0 votes
Hey @L.B Alright ! Ça a marché et je suis de nouveau en activité. Merci à tous ceux qui m'ont aidé !
1 votes
@L.B : Créez cette réponse pour qu'il puisse l'accepter.