2015-11-17 1 views
6

J'essaie de convertir une de mes applications simples Asp.Net MVC en .Net Core. J'essaie donc de comprendre comment l'application .Net Core Asp.Net est organisée ou structurée. Je comprends .Net Core est not ready for Production yet. Le .Net Core documentation est pour la plupart de la partie pas encore écrite (d'où la curiosité).Comment l'application .Net Core 5 est-elle organisée/structurée? ou comment ajouter des projets de bibliothèque de classes n-tier à la solution Asp.net de base .Net?

Availability of Asp.Net 5 Beta8 a été annoncé récemment. J'ai essayé dnvm et dnx de travailler sur mac, il y a quelques problèmes avec les versions bêta qui sont résolues après une certaine persistance.

Maintenant, en général nous organisons notre solution .Net un peu comme ceci: -

MySolution.Core.sln 
    \MyProj.Web 
    \MyProj.Core 
    \MyProj.Domain 
    \MyProj.Service 
    \MyProj.Data 
    \etc... 

Donc, tout en essayant de migrer le projet vers .Net Asp.Net de base, nous voulons maintenir la structure similaire à celle ci-dessus. Le Your First Asp.Net 5 Application on Mac ne m'a pas vraiment présenté une grande partie de l'application de la vie réelle en tant que telle. De plus, se inspirant de here et here, je l'ai remarqué la structure suivante de l'application: -

MYFIRSTAPP 
\src 
    \MyFirstApp 
     \bin 
     \wwwroot 
      \css 
      \images 
      \js 
      \lib 
      _references.js 
     \Controllers 
     \Views 
     \ViewModels 
     Startup.cs 
     project.json 
     hosting.ini 
    global.json 

En project.json nous définissons nos dépendances. Donc, ma question est, la structure ci-dessus est-elle la norme pour l'application .Net MVC 6? et comment ajouter les autres couches [Core, Domain, Service, Data] ou les projets de bibliothèque de classes à l'application ci-dessus?

+0

Il n'y a pas de "ASP.NET 6". Et vous pouvez certainement avoir des bibliothèques de classes. Je vous suggère d'obtenir Visual Studio, et d'utiliser cela pour apprendre la structure de la nouvelle architecture, alors vous pouvez utiliser la connaissance de l'architecture sur un Mac si vous le souhaitez. – mason

+0

Oups désolé ma mauvaise, je voulais dire MVC 6. – amitthk

Répondre

0

Je ne sais pas ce que votre question est que vous semblez avoir déjà la réponse, mais voici une réponse potentielle:

La structure de la solution devrait être similaire à ce que vous aviez auparavant dans ASP.NET Pré-5. Utilisez des bibliothèques de classes pour différentes couches et vous pouvez conserver la structure existante.

La seule différence majeure en termes de structure est le dossier wwwroot que je vois que vous avez déjà inclus.


mise à jour des commentaires OP:

Les bibliothèques de classes seront packages aussi. Here's an example of a class library written using DNX. Vous pouvez ensuite référencer cette bibliothèque de classes dans project.json as shown here.

Le code source peut vivre dans un dossier que vous décidez et vous pouvez utiliser global.json pour inclure ces dossiers dans le chemin de recherche comme ici: https://github.com/aspnet/Configuration/blob/dev/global.json

+0

⁠⁠⁠C'est ce que ma question est - 'Utiliser des bibliothèques de classes pour différents projets' - quel serait l'emplacement de ce code source? Comment le projet.json pour ce projet est-il configuré? Comment project.json du projet Web ci-dessus référence les DLL (s) de ces projets de bibliothèque de classes. Note: J'utilise VSCode & dnx. – amitthk

+0

Voir la réponse mise à jour –