Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Kilka projektów


Rekomendowane odpowiedzi

Opublikowano

Witam, mam pewien problem. W jaki sposób zrobić projekt i dodać do niego inne pliki .cs, tak żeby każdy mógł czytać dane z każdego? Używam Microsoft Visual C# 2010 Express

90300032.png

  • 2 tygodnie później...
Opublikowano

Jak masz 2 obiekty utworzone np.

 

Player.cs

System.cs

 

 

Odwołujesz się do Player.cs z System.cs np w w taki sposób, ustaw klasy tez na public w obiekach:

 

 

namespace Astrabot.Objects
{
  public  class Player
    {

 

 

string tekst = Player.Name;

  • 3 miesiące temu...
Opublikowano

Oczywiście jeśli mówimy o plikach klas znajdujących się na poziomi jednego projektu to wystarczy ustawić odpowiednie modyfikatory dostępu na public

http://4programmers.net/C_sharp/Modyfikatory_dost%C4%99pu i później tworzyć obiekty gdzie chcemy.

 

Najprostszy przykład:

 

Mamy klasę Product.cs

 

ohkdxu.png

 

Ona zawiera 3 właściwości i 2 metody. Ustawiłem ją na public, czyli jest publiczna dla wszystkich innych klas w moim programie.

 

Teraz aby odwołać się do właściwości i metod z klasy Product.cs w innej klasie np. Program.cs to musimy utworzyć w niej instancje obiektu klasy Product a później odwoływać się do poszczególnych pól i metod.

 

2zrmds6.png

 

2v95jmh.png

 

Natomiast na ten problem należy popatrzeć trochę szerzej.

W żadnej aplikacji nie pisze się wszystkiego w 1 projekcie. Wiem to po swoim wieloletnim doświadczeniu w branży programowania.

 

Teraz dąży się do odpowiedniej modułowości aplikacji. Czyli budujecie aplikacje tak jakby z takich klocków. W jednym projekcie macie np. Modele, W Innym macie np. Abstrakcję, W innym macie np. Operacje CRUDowskie na bazie danych. W innym macie interfejs użytkownika. W innym zaś services, W innym repozytorium a w innym testy.

 

Czyli schemat wspólczesnej aplikacji wygląda tak:

 

k1cig5.png

 

W obrębie jednej solucji mamy kilka projektów ( kilka klocków ) z których każdy z nich jest odpowiedzialny za inną funkcjonalność.

 

Każdy z tych klocków jest od sebie nie zależny i powinien być oddzielony odpowiednią warstwą abstrakcji.

 

I teraz jeśli chcesz, żeby np w projekcie CMS.Repository można było skorzystać z modeli klas w z projektu CMS.Models to musisz do projektu Repository dodać odpowiednie referencje:

 

Klikamy na naszym projekcie Repozytorium Add --> Reference

 

14ac3yt.png

 

Następnie przechodzimy do zakładki Solution ( bo dodajemy referencje z naszej istniejącej innej solucji lub projektu ). Zaznaczamy CMS.Models i klikamy ok.

 

14k8osx.png

 

Oczywiście możemy zaznaczyć więcej niż 1 referencje ale musimy uważać na Circural Reference.

 

http://www.codeproject.com/Articles/616344/What-is-Circular-dependency-and-how-do-we-resolve

 

Czyli tak na prawdę takie zamknięte koło w którym nasze projekty się wzajemnie wykorzystują.

Czyli jak jednoczesnie ustawimy referencje z REPO do Modeli i Modeli do REPO.

 

Naszczęście Visual jest na tyle inteligentny że nas okrzyczy i wywali komunikat o błędzie:

 

2myyxlj.png

 

Mam nadzieje, że pomogłem :)

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...