quand avez-vous besoin de fichiers .ascx et comment les utiliseriez-vous?

88

Lors de la création d'un site Web, quand serait-il judicieux d'utiliser des fichiers .ascx? Qu'est-ce que le .ascx exactement et à quoi sert-il? Des exemples aideraient beaucoup merci!

anthonypliu
la source

Réponses:

97

C'est une extension des contrôles utilisateur que vous avez dans votre projet.

Un contrôle utilisateur est une sorte de contrôle composite qui fonctionne un peu comme une page Web ASP.NET: vous pouvez ajouter des contrôles serveur Web existants et un balisage à un contrôle utilisateur et définir des propriétés et des méthodes pour le contrôle. Vous pouvez ensuite les incorporer dans des pages Web ASP.NET, où ils agissent comme une unité.

Simplement, si vous souhaitez avoir des fonctionnalités qui seront utilisées sur de nombreuses pages de votre projet, vous devez créer un contrôle utilisateur ou un contrôle composite et l'utiliser dans vos pages. Cela vous aide simplement à conserver les mêmes fonctionnalités et le même code au même endroit. Et cela le rend réutilisable .

Shekhar_Pro
la source
12

Nous utilisons essentiellement des contrôles utilisateur lorsque nous devons utiliser des fonctionnalités similaires à différents emplacements d'une application. Tout comme nous utilisons des pages maîtres pour une apparence et une convivialité cohérentes de l'application, de même pour éviter de répéter les mêmes fonctionnalités et la même interface utilisateur dans toute l'application, nous utilisons des contrôles utilisateur. Il se peut que j'en utilise beaucoup plus, mais je ne connais que celui-ci ...

Par exemple, disons que votre site a 4 niveaux d'utilisateurs et que pour chaque utilisateur, il existe différentes pages sous différents répertoires avec différents mécanismes d'accès. Supposons que vous demandiez des informations d'adresse pour tous les utilisateurs, puis que vous créez des champs d'adresse tels que Rue, Ville, État, Code postal, etc. sur chaque page. Ce serait un travail répétitif. Au lieu de cela, vous pouvez le créer en tant que fichier ascx (ext pour le contrôle de l'utilisateur) et dans ce contrôle mettre l'interface utilisateur et le code métier nécessaires pour ajouter / mettre à jour / supprimer / sélectionner l'adresse en fonction du rôle, puis référencer simplement toute la page requise.

Ainsi, en pensant aux contrôles utilisateur, on peut éviter la répétition du code pour chaque rôle et la création d'interface utilisateur pour chaque rôle.

SaiyanGirl
la source
9

Les fichiers Ascx sont appelés contrôles utilisateur et sont destinés à être réutilisés et aussi à rendre les pages aspx complexes moins complexes (soulevez une partie de la page). Ils pourraient également être bénéfiques pour quelque chose appelé la mise en cache en anneau , c'est-à-dire lorsque vous souhaitez mettre en cache une certaine partie d'une page.

jimmystormig
la source
3

Si vous avez un bloc de code + html qui apparaît sur plusieurs pages et qui est en quelque sorte indépendant de cette page (disons un bloc des dernières nouvelles), vous pouvez copier / coller le code sur chaque page.

Il est cependant préférable de mettre ce code dans son propre bloc et de simplement inclure ce bloc sur chaque page qui en a besoin. Ce "bloc" est un fichier ascx.

Hans Ke st ing
la source
1

Les fichiers ASCX sont un framework d'application Web côté serveur conçu pour le développement Web afin de produire des pages Web dynamiques.Ils aiment les codes DLL, mais vous pouvez utiliser des balises Vous pouvez les écrire une fois et les utiliser à n'importe quel endroit de vos pages ASP.Si vous avez un fichier nommé "Controll.ascx" alors son code sera nommé "Controll.ascx.cs". Vous pouvez l'intégrer dans une page ASP pour l'utiliser:

matio
la source
1

Une autre utilisation des fichiers .ascx est qu'ils peuvent être utilisés pour la mise en cache de pages partielles dans les pages ASP.NET. Ce que nous devons faire est de créer un fichier ascx, puis de déplacer les contrôles ou une partie de la page que nous devons mettre en cache dans ce contrôle. Ajoutez ensuite la directive @OutputCache dans le contrôle ascx et elle sera mise en cache séparément de la page parent. Il est utilisé lorsque vous ne souhaitez pas mettre en cache la page entière mais seulement une partie spécifique de la page.

Jashobanta Chakraborty
la source
-2

Lorsque vous créez un site Web asp.net de base à l'aide de contrôles Web, c'est une bonne idée lorsque vous souhaitez pouvoir utiliser vos contrôles à plusieurs endroits de votre site Web. Séparer le code des fichiers ascx de mise en page contiendra les contrôles utilisés pour afficher la mise en page, les fichiers cs appartenant aux fichiers ascx contiendront le code qui remplit ces contrôles.

Pour une compréhension de base des contrôles utilisateur, vous pouvez essayer ce site Web

Younes
la source
1
Non, avec un modèle codebehind, vous obtenez des fichiers aspx ou ascx PLUS un aspx.cs ou ascx.cs (ou aspx.vb et ascx.vb). Vous pouvez avoir un site avec uniquement des pages aspx (et aspx.cs), sans aucun ascx.
Hans Ke st ing
2
on dirait qu'il a été confondu avec cx et cs
Shekhar_Pro