Bonjour,
je souhaite mettre en place un service web dans mon application C#.

Je vais donc créer mon propre service web. J'ajoute un nouvel élément au projet de type Service WCF que j'appelle ServiceBonjour.
L'extension de ce fichier est .svc. Visual Studio me génére 3 fichiers. Le premier est l'interface IServiceBonjour, le second le fichier ServiceBonjour.svc et le troisième ServiceBonjour.svc.cs.

Après modification du code, je dispose dans l'interface :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
[ServiceContract]
public interface IServiceBonjour
{
	[OperationContract]
	string DireBonjour(string qui);
}
Et ma classe ServiceBonjour :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public class ServiceBonjour : IServiceBonjour
{
	public string DireBonjour(string qui)
	{
		return "Bonjour " +qui+ " depuis le service web";
	}
}
Je lance mon service web et le client de test de service WCF s'ouvre. L'outil invoque mon service web et retourne correctement le résultat.

J'essaie a présent d'appliquer cet exemple dans mon cas.

Pour rappel : une solution C# découpée selon l'architecture 3-Tiers, je dispose donc dans ma solution d'un projet contenant l'ensemble des méthodes de mon programme.

J'aimerais donc savoir comment intégrer mon service web WCF dans mon cas.

Je pensais utiliser l'interface de mon service web WCF pour implémenter l'ensemble des méthodes de mon projet.

J'aurais donc mon interface :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
[ServiceContract]
public interface IServiceWCF
{
 
	[OperationContract]
	List<T> Exemple1();
 
	[OperationContract]
	Class1 Exemple2(string param1);
}
Implémentant ma classe contenant les méthodes de mon projet :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
public class Service : IServiceWCF
{
	public List<T> Exemple1(){}
 
	public Class1 Exemple2(string param1){}	
}
Après il faudrait probablement procéder à un changement dans l'ABC de la communication (Adress Binding Contract), probablement changer le endpoint adress = "http://localhost:49172/ServiceBonjour.svc" en adress = "http://localhost:49172/Service.cs"

Je demande donc si je part sur le bon chemin. J'ai beaucoup étudié la question grâce aux conseils des membres du site.

Merci d'avance !