Je suis récemment entré en contact avec un projet c#, qui est essentiellement une structure MVC et un projet web basé sur asp.net. La couche de vue est composée de plusieurs fichiers cshtml (peut essentiellement être considérée comme les fichiers aspx précédents), la couche de contrôleur est composée de plusieurs fichiers cs (code c#) et la couche de données ne sera pas abordée ici.
Ce projet est comme ça. J'ai jeté un coup d'œil rapide. Par exemple, dans le fichier cshtml de la couche de vue, un certain bouton sera lié à une certaine fonction dans le fichier js. Ensuite, cette fonction soumettra une demande de publication ou une. get request, puis elle sera liée à La fonction correspondante dans le fichier cs de la couche contrôleur est suivie du traitement et du retour des données.
Maintenant, j'ai les confusions suivantes :
1. Je ne sais pas si le processus mentionné ci-dessus est désormais un processus d'interaction front-end et back-end courant dans le développement Web ?
2. La technologie jsp basée sur le Web Java est-elle similaire au processus .net ci-dessus ? Le fichier jsp correspond-il au fichier cshtml en .net ? Cependant, il est dit en ligne que les fichiers jsp contiendront du code java, mais je n'ai trouvé aucun code c# dans le fichier cshtml. C'était soit du HTML, soit du js
.3. Si le fichier jsp contient beaucoup de code Java, la couche de vue et la couche de contrôleur ne seraient-elles pas collées ensemble ? Ne devrait-il pas s'agir d'un processus dans lequel le fichier jsp appelle js, puis js appelle le fichier java dans la couche contrôleur côté serveur ?
4. S'il est vrai que le fichier jsp de la question 3 contient une grande quantité de code java, alors il n'est effectivement pas bien découplé. Alors pour le projet .net que je viens de citer, un tel processus signifie-t-il que le front-end. et le back-end sont découplés ? Le couplage est-il plutôt bon ?
5. Ce qui me laisse un peu perplexe, c'est pourquoi je ne trouve pas un seul fichier html dans ce projet .net. Ce sont tous des fichiers cshtml, et puis il y a un grand nombre de fichiers js et cs (c#). code).
Merci à tous, je suis en fait un débutant qui vient d'entrer dans le monde du développement web
Merci pour l'invitation. Ce qui suit est mon humble avis. Si vous souhaitez vaporiser, veuillez vaporiser légèrement :
.C’est vrai. Mais maintenant, il y a une séparation entre le front et le back end
Oui non,
cshtml
应该对应是java中的velocity
Si mélangé, ce sera le cas. Vous pouvez faire correspondre jsp à une servlet
Oui, c'est plutôt bien
Il s'agit d'un modèle qui rendra simplement le développement HTML plus convivial pour notre personnel backend
C'est tout. Parce que j'ai de l'expérience, je vais donner une réponse :
1. Ce que vous avez dit à propos de la création d'un lien vers un fichier js comprenant un fichier css, c'est parce que le chemin de reconnaissance est défini en c#, sinon il ne sera pas reconnu.
2. cshtml est la syntaxe Razor, et le suffixe du nom de fichier doit être celui-ci.
3. Je n'ai jamais rencontré de projet .net mélangé à Java. Cependant, il est toujours recommandé d’utiliser du C# pur puisqu’il s’agit de .net, qui est également plus facile à maintenir.
4. Tous vos doutes proviennent désormais de votre manque de compréhension du backend, si vous avez le temps, vous pouvez apprendre le framework express de Node ou la syntaxe des modèles koa, et vous comprendrez vos doutes actuels.
Il s'agit d'une architecture d'interaction front-end et back-end classique, mais le courant dominant actuel a migré vers la direction spa. Le front-end est responsable du traitement de plus de routage et de logique, et le back-end est uniquement responsable de la fourniture. API et données ;
jsp et cshtml peuvent être considérés comme identiques dans ce sens, mais les détails sont différents ; quant à la raison pour laquelle il n'y a pas de c# dans cshtml, c'est parce que Microsoft stipule que la couche View utilise le moteur Razor, et le suffixe est cshtml. En plus du HTML et du js standards, la syntaxe Razor peut également être utilisée (notez qu'il ne s'agit pas de C#), mais selon la tendance actuelle, de plus en plus de personnes n'utilisent pas le back-end pour générer des pages, mais traitez-les directement sur le front-end, donc il n'y a pas d'instructions rasoir dans de nombreux cshtml
Jsp mélangé avec java est une analogie avec asp, qui est une technologie obsolète. Le questionneur a accepté le concept de mvc, et la question posée est correcte, donc personne ne le fait maintenant
Oui;
Parce que c'est stipulé par Microsoft, voir 2 pour des raisons spécifiques ; les fichiers html peuvent également exister, mais l'utilisation de cshtml peut être liée au contrôleur par défaut, ce qui est plus pratique
Ce problème est la séparation du front-end et du back-end. Le courant dominant actuel est la séparation MVC à trois couches.
Quant au JSP dont vous parlez, il s'agit en fait d'une première forme de Java qui intègre du code Java dans HTML. Cette méthode d’utilisation s’est progressivement affaiblie.