[C# / Beginner]Classe aanroepen in zelfde map werkt niet...

Status
Niet open voor verdere reacties.

slabbetje

Gebruiker
Lid geworden
5 mei 2007
Berichten
290
Beste helpers,

Ik ben sinds vandaag begonnen aan een privateserver applicatie en nu heb ik 2 klasse gemaakt.

Program.cs (standaard bij cmd-app) en Core.cs nu wil ik met Program.cs de klasse IniFile benaderen alleen gekgenoeg herkent hij hem niet. Terwijl ik aanneem dat je gewoon zonder import je klasse kan aanroepen omdat bijde bestanden in de Rootmap staan.

Ikzelf programmeer veel Actionscript 3.0 en Java en in beide talen doet hij dit wel gewoon zonder problemen maar C# geeft een bug.

Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace EliteConquer
{
    public class Core
    {
        public class IniFile
        {
            public string path;
            public IniFile(string INIPath)
            {
                //
            }
        }
    }
}

Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace EliteConquer
{
    public class Program
    {
        static void Main(string[] args)
        {
            /**
             *  Check if the "Data" folder is inside the compiled source
             */
            if (System.IO.Directory.Exists(@"Data"))
            {
                IniFile I = new IniFile(@"Data\Config.ini");
            }
            else
            {
                Console.WriteLine("[Error] Please check if the there is a Data folder available, else create one...");
                Console.ReadLine();
            }
        }
    }
}

Alvast bedankt,

Michael
 
lijkt goed te zijn.
welke error krijg je?
heb je wel je solution gebuild?
Byess VRC
 
Ja dit heb ik gedaan...

Code:
Error	1	The type or namespace name 'IniFile' could not be found (are you missing a using directive or an assembly reference?)	C:\Users\Gebruiker\Desktop\EliteEmulator\EliteConquer\Program.cs	17	17	EliteConquer

Ik neem aan dat je geen import hoeft te maken of iets... of omslachtig te doen door te typen: EliteConquer.Core.IniFile ipv simpel IniFile
 
kheb hier geen visual studio bij de hand maar kzag dat je main method static is.
volgens mij kan je geen objecten maken in je static method.
 
Code:
Error	1	The type or namespace name 'IniFile' could not be found (are you missing a using directive or an assembly reference?)	C:\Users\Gebruiker\Desktop\EliteEmulator\EliteConquer\Program.cs	17	17	EliteConquer

Ik neem aan dat je geen import hoeft te maken of iets... of omslachtig te doen door te typen: EliteConquer.Core.IniFile ipv simpel IniFile

Wat noem je omslachtig? De klasse IniFile zit namelijk IN de klasse Core, en bestaat in de context zoals je hem nu gebruikt dus gewoon niet, zoals de foutmelding ook netjes aangeeft ;)
 
ooh ja indd. nested class.
zo stom dak dat niet zag xD
 
Ow... stom vandaar dat hij niks deed ik had inderdaad mn classe in een classe gezet dat was niet mijn bedoeling
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan