Bonjour
Je me retrouve façe à un problème concernant le passage d'objet de mon client vers mon serveurs.
J'utilise une classe librairie que j'ai faite "MaLibrairie". Je l'ai faite sérializable pour pouvoir passer les différents objets de ma librairie de mon client vers mon serveur
Le serveur (qui utilise MarshalByRefObject) contient une méthode AddGroupToAddAccess
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 [Serializable] public class ADUserGroup : ADObject { ..... }
Classe de mon serveur
Interface
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public class UgmObjManaged: MarshalByRefObject, IADMObjManaged { public void AddGroupToAddAccess(ADUserGroup GrpToAddAccess) {....} }
Mon client se connecte à mon serveur et crée un objet proxy.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public interface IUgmObjManaged { void AddGroupToAddAccess(ADUserGroup GrpToAddAccess); }
J'appel ensuite la méthode AddGroupToAddAccess de mon serveur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 IUgmObjManaged l_IUgmObject; l_IUgmObject = (IUgmObjManaged)Activator.GetObject(typeof(IUgmObjManaged), "tcp://" + _sServerName + ":" + _iServerPort + "/UgmObjManaged"); ADUserGroup l_adUsrGrToMove = (ADUserGroup)l_adObjFromLv; l_IUgmUser.AddGroupToAddAccess(l_adUsrGrToMove);
Le problème c'est que lorsque j'appelle cete méthode "AddGroupToAddAccess" depuis mon client et que je lui passe mon objet de type "ADUserGroup", celui me génère une nullReferenceException coté serveur. En gros mon objet n'a pas été transféré du client vers le serveur.
Pourtant d'après ce que j'ai lu il me suffisait de déclarer ma classe "ADUserGroup" en tant que [Serializable].
Merci de votre aide
Partager