begin process at 2012 05 27 17:55:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ASP & ASP.NET

 > 

Archives ASP & ASP.NET

 > 

AU SECOURS !!!!

 > 

[ASP.net][C#] Séparation de la classe


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[ASP.net][C#] Séparation de la classe

mercredi 3 novembre 2004 à 10:05:16 | [ASP.net][C#] Séparation de la classe

otterc8

Bonjour, bonsoir bonne nuit!
Je voudrais savoir s'il est possible de séparer une classe du reste du code en ASP.net!?

ex:

MaClasse{
Attrib1;
Attrib2;
Attrib3;

Func1(){}
Func2(){}
Func3(){}
}

void Page_Load(object sender, EventArgs e){
MaClasse Obj1=New MaClasse;
Obj1.Func1();
...
}

Voila mon exemple avec du pseudo code, j'ai différentes pages .aspx qui utilisent MaClasse, mais je voudrais savoir s'il est possible de mettre MaClasse dans un fichier d'entete (par exemple comme en C++, un #include et hop)!?
Et surtout je voudrais savoir comment on fait!?

En vous remerciant d'avance!

Y a rien a apprendre tout a comprendre
mercredi 3 novembre 2004 à 12:06:53 | Re : [ASP.net][C#] Séparation de la classe

jesusonline

Membre Club Administrateur CodeS-SourceS
on ne peut pas faire d'include mais on peut faire du code behind, tu met ta classe dans un fichier .cs tu hérites ta classe de system.web.ui.page (attention à la casse)

puis tu rajotues ca dans le .aspx
<%@ Page Language="cs" Codebehind="404.aspx.cs" Inherits="BeaujolaisDurand.Erreur404"%>

ou BeaujolaisDurand.Erreur404 est le nom de ta classe


mais le mieux c'est quand meme de travailler avec VS.net qui fait tout ca automatiquement et bien plus encore


Cyril
mercredi 3 novembre 2004 à 14:54:11 | Re : [ASP.net][C#] Séparation de la classe

otterc8

Quand tu me dis de faire hériter ma classe de System.Web.UI.Page, en fait je dois faire un using!?
genre:

using System.Web.UI.Page;

MaClasse{
Attrib1;
Attrib2;
Attrib3;

Func1(){}
Func2(){}
Func3(){}
}


ce code j'en fais un fichier classe.aspx.cs

et dans chaque fichier . aspx, je met tout en haut:

<%@ Page Language="C#" Codebehind="classe.aspx.cs" Inherits="MaClasse"%>

c'est bien ça!?
Ent tout cas merci ;)


Y a rien a apprendre tout a comprendre
mercredi 3 novembre 2004 à 16:33:01 | Re : [ASP.net][C#] Séparation de la classe

jesusonline

Membre Club Administrateur CodeS-SourceS
c'est vrai que tout à l'heure j'etais peut etre un peu rapide, j'etais pressé, et je le suis toujours mais non c'est pas un using qu'il faut faire mais ca :

Public MaClass : System.Web.UI.Page
{

}


pour le reste c'est bon

@+


Cyril
mercredi 3 novembre 2004 à 23:41:33 | Re : [ASP.net][C#] Séparation de la classe

otterc8

Merci beaucoup je vais pouvoir essayer ca demain!
Merci j'te tiens au courant sur le fonctionnement ;)
Sinon qqn m'as dis que je pouvais faire comme ca!

"Il te suffit d'intégrer ton code dans une classe C# indépendante, de lui attribuer un namespace puis de la référencer dans le code behind de ta page ASPX (mot clé using)."

Mais je trouve que ce n'est pas tres précis donc je vais essayer ta solution et voir pour la suite ;)

Bonne prog!

Y a rien a apprendre tout a comprendre
jeudi 4 novembre 2004 à 00:31:19 | Re : [ASP.net][C#] Séparation de la classe

jesusonline

Membre Club Administrateur CodeS-SourceS
oui tu peux aussi faire la solution du dessus, mais si tu connais pas, et si tu n'as pas VS.net, faire ca à la main, ca va t'etre compliqué, mais si tu veux faire quelque chose de compliqué avec asp.net, VS.net est un outil presque indispensable, au moins pour débuter :)

Mais c'est vrai que la méthode ci dessus, est plus joli, ca depend aussi du contenu de la classe, mais dans la plupart des cas je ferais cette derniere méthode.

Je t'explique en deux mots

tu fais ta classe avec un namespace
je fais le code en C# mais je code jamais avec ce langage, alors il risque d'avoir des fautes

namespace Cyril
{
public Class Personne
{
public string Name;
public Int Age;
}
}

apres faut compiler cette classe en une dll via la ligne de commande, apres cette dll, tu la met dans le repertoire bin de ton application web dans ta page tu ajoutes un using Cyril;

dans le code tu pourras faire

Cyril.Personne oPersonne = new Cyril.Personne;
oPersonne.Name = "Cyril";
oPersonne.Age = 18;

Voila en gros le principe de la deuxieme méthode, la premiere méthode peut etre utilisé pour ton cas, mais apres reflexion c'est pas vraiment ce que tu voulais faire, je pensais que tu avais des pages qui avait un comportement identique, donc dans la premiere solution, ta classe qui derivait de page, tu aurais pu avoir

public sub Page_Load(...) handles Me.load '(en vb)
end sub

c'est à dire que tu n'aurais plus eu le code de la gestion de la page dans ton aspx

donc finalement je te conseil la deuxieme solution qui est beaucoup plus prevu pour faire ca :D

j'espere ne t'avoir pas trop embrouillé, désolé d'avoir mal compris ta réponse


Cyril
jeudi 4 novembre 2004 à 10:08:18 | Re : [ASP.net][C#] Séparation de la classe

otterc8

Bah je pense que ce que tu me dis de faire c'est qu'il vaut mieux utiliser la technique avec le namespace, mais tu me dis de compiler ma classe et d'en faire une dll!!, mais comment qu'on fais pour compilé en dll dans WebMatrix ou simplement sans VisualStudio.net?
Je vais regarder un peu sur le site, me ballader quoi!
Sinon merci pour tout tes renseignement ;)

Y a rien a apprendre tout a comprendre
jeudi 4 novembre 2004 à 12:20:31 | Re : [ASP.net][C#] Séparation de la classe

jesusonline

Membre Club Administrateur CodeS-SourceS
avec webmatrix malheureusement c'est pas prevu pour

il faut utiliser le "programme" csc qui se situe ici :
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322
faut faire ca sous dos, tu te met dans le dossier ci dessus et tu tapes cette ligne de commande
csc tonfichier.cs /t:library
je crois que c'est qqchose comme ca, mais je m'en sers jamais, regarde sur le net si c'est pas le cas


Cyril
jeudi 4 novembre 2004 à 14:29:05 | Re : [ASP.net][C#] Séparation de la classe

otterc8

Tu as presque raison pour ce qui est de la compilation de fichier en dll c'est:
csc /t:library Tonfichier.cs

sinon j'ai essayer d'utiliser les technique j'ai fini par avoir un mix des 2, lol!

Fichier.aspx.cs

MonEspace{
MaClasse::System.Web.UI.Page
{
Attrib1;
Attrib2;
Attrib3;

MaClasse(String titi); //constructeur
Func1(){}
Func2(){}
Func3(){}
}
}


Fichier.aspx

<%@ Page Language="C#" Inherits="MonEspace.MaClasse" Src="Fichier.aspx.cs" %>
...
<script runat="server">
//mon code
MonEspace.MaClasse Obj= new MonEspace.MaClasse(string toto); //c'est mon contructeur
...
</script>

Malheureusement dans cette condition il me dis que je ne peux pas surcharger MaClasse:

"CS1501: No overload for method 'BaseAccess' takes '0' arguments"
"[No relevant source lines]"
"Source File: c:\WINNT\Microsoft.NET\Framework\v2.0.40607\Temporary ASP.NET Files\root\c64f34cd\904ad10a\95g_6ix0.0.cs"

Bizar nan!?
Sinon si je compile en .dll et et que je passe "Src=Fichier.aspx.dll" dans le fichier "Fichier.aspx"
Bah grosse erreur:
"There is no build provider registered for the extension '.dll'. You can register one in the <compilation><buildProviders> section in machine.config or web.config. Make sure the appliesTo attribute includes the value 'Web' or 'All'."

Bon je vais me creusé le crane encore un peu, j'te tien au courant!en tout cas merci pour le coup des .dll, ca marche nikel chrome!
;)

$¤B@$T!¤~

Y a rien a apprendre tout a comprendre
jeudi 4 novembre 2004 à 17:28:47 | Re : [ASP.net][C#] Séparation de la classe

jesusonline

Membre Club Administrateur CodeS-SourceS
La méthode que t'as fait ne peut pas aller, tu ne peux pas surcharger ta classe c'est du au constructeur de page.

il ne faut pas que tu hérites ta classe de page, que tu compiles en dll, (ma ligne de comande ou la tienne doit etre equivalente ) puis tu met cette dll dans le dossier bin de l'application web, il faut que tu fasses un using MonEspace et normalement ca doit marcher !

si ca marche pas ce soir, j'essaierais et je te dirais comment faire :)

@+



Cyril

1 2

Cette discussion est classée dans : net, asp, code, classe, maclasse


Répondre à ce message

Sujets en rapport avec ce message

Pb avec form en asp.net, Vb, sur webmatrix [ par bloodspecter ] Bonjour! J'ai un petit problème avec une petite tranche de code. Je suis débutant en asp.net et quelque chose semble bloquer mon bouton onclick. Quand utiliser une classe .net en asp [ par fyrrhom ] bonjour,j'ai une classe (dll) faite en vb.net via visual studio et je voudrais l'utiliser sur un site en aspj'ai essayé ça mais ça marche pas :set mon ASP.net 2, code behind d'une masterpage [ par lutin2004 ] Bonjour,Je viens de passer à asp.net 2 et j'ai un soucis avec les masterpage.J'ai rajouté la balise codefile, mais il me faut aussi le inherits, mais dll vb.net et référencement en asp.net [ par wahref ] Bonjour à tous!Je developpe un site web sur ASP.Net, et pour se connecter à une base de données access j'utilise un pilote ODBC et puis j'ai créer une APPLCATION ASP.NET ET CLASSE,,,???????? [ par sg_kan ] HHHHHHHHELLP MA PLEASE je suis dnas une cata J'ai fait un projet en ASP.NET et c# mais ej n'ai pas utilisé de classe (auncue) j'ai ma base de données Ajouter un applet dans ASP.Net code???? [ par clavijo ] Salut a tous!!!!J'ai une ASP page qui travaille avec un applet Java. Je voudrais faire la meme page dans ASP.Net, mais je ne sais pas si je peux ajout ASP.Net avec Code-Behind [ par YomYom ] Cherche perle rare: hébergeur supportant des sites en ASP.Net en code-behind et base SQL server et cerise sur le gateau, à un prix abordable (c'est po [ASP.NET/VB.NET] GUID dans une URL [ par Netlink ] Bonjour,Je me heurte à un problème lorsque je souhaite inclure un GUID et le récupérer via un QueryString...J'ai une erreur!Comment faut-il procéder ? asp.net et code behind [ par aymdeb ] Bonjour,J'ai un formulaire asp.net et lorsque je clique sur les boutons, les procédures du code behind associées aux boutons ne s'exécute pas.Quelqu'u CheckBox en C# ASP.net [ par Abdi075 ] voila j'utimlise un checkbox dans mon appli et voic le code en html : et en code behind j'écris  la méthode  changeClik <br


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,998 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales