Silent Assassin Napisano Grudzień 28, 2009 Zgłoś Share Napisano Grudzień 28, 2009 Witam, chciałem się dowiedzieć jak zapisać w Visual C# Express dwa pliki tak żeby jeden odwoływał się do drugiego. Na przykład jeśli mamy w jednym pliku zapisaną jedynie klasę class Dane { public int x; public int y; } a w drugim metodę Main od której program zaczyna: using System; public class Program { public static void Main() { Dane WypiszDane = new Dane(); WypiszDane.x = 100; WypiszDane.y = 200; Console.WriteLine("x wynosi: " + WypiszDane.x) Console.WriteLine("y wynosi: " + WypiszDane.y) } } To wtedy nazwa klasy "Dane" w drugim kodzie jest traktowana jako błąd przez kompilator i nie chce dać się skompilować. Wydaje mi się, że kiedy zapisuję oba foldery obok siebie, to oba te programy się nie widzą. Dlatego prosiłbym o pomoc jak to zapisać, z góry dzięki. Nie dopisujemy się do cudzych tematów. [wies.niak] Link do komentarza Udostępnij na innych stronach More sharing options...
wies.niak Napisano Grudzień 28, 2009 Zgłoś Share Napisano Grudzień 28, 2009 1. Jaki błąd? 2. Czy oba pliki znajdują się w projekcie? 3. Czy obie klasy są w tym samym namespace? Link do komentarza Udostępnij na innych stronach More sharing options...
Silent Assassin Napisano Grudzień 29, 2009 Autor Zgłoś Share Napisano Grudzień 29, 2009 Sama treść errora to: The type or namespace name could not be found (are you missing a using directive or an assembly reference?) Ale to nie do końca jest tak, jak "mówi" błąd, bo ogarnąłem clasę Dane w namespace, a do klasy Program dopisałem dyrektywę using i dalej był błąd. Ale jak nad tym jeszcze posiedziałem to udało mi się po części naprawić ten error. Oba foldery zapisuje obok siebie a potem otwieram najpierw plik z klasą Program a potem ten z klasą Dane, tak żeby to były dwie zakłądki w jednym dokumencie. Kolejność jest ważna, bo inaczej lipa. Ale teraz powstał inny problem: jak klikam na build solution, to podczas kompilacji wyskakuje mi taki error: Program 'D:\(...)\Dane\Dane\obj\Release\Dane.exe' does not contain a static Main method suitable for any entry point Rozumiem, że chodzi o to, że w pliku z klasą Dane nie ma tego wierszyka public static void Main(), ale wydaje mi się, że nie trzeba go tam umieszczać, bo powyższy kod jest żywcem przepisany z książki. Ps. Sorry za wcinanie się do tamtego tematu, teraz będę wiedział co i jak. ^^ Link do komentarza Udostępnij na innych stronach More sharing options...
wies.niak Napisano Grudzień 29, 2009 Zgłoś Share Napisano Grudzień 29, 2009 Nie wiem, jak Ty to robisz, że masz takie problemy. Zobacz na przykładowy projekt i powiedz, czy Ci działa (u mnie tak).cda20091229.zip Link do komentarza Udostępnij na innych stronach More sharing options...
Silent Assassin Napisano Grudzień 29, 2009 Autor Zgłoś Share Napisano Grudzień 29, 2009 Już wiem co pochrzaniłem. Ty zapisałeś sam plik źródłowy pliku z klasą Dane w kiszkach pliku Program, a ja oba te pliki zapisałem w folderach obok siebie opcją "save all". A potem trzeba to połączyć przez Solution Explorera po prawej stronie żeby program wiedział skąd ta klasa się wzięła. Dzieki za pomoc! Link do komentarza Udostępnij na innych stronach More sharing options...