Je suis nouveau à la mise en place de WCF, je l'ai dans mon projet, mais j'ai 5 différents 'services' dans mon projet WCF et je me demande si je fais la bonne chose . Mes services pour le moment sont 1-1 à mes tables de base de données. Je finis par avoir quelque chose comme:WCF un service ou plusieurs services
public class Projects : IProjects
{
public List<Project> GetAll()
{
return (from p in Connection.Data.Projects
select new Project {ID = p.id, Name = p.name}).ToList();
}
public Project GetByID(int id)
{
return (from p in Connection.Data.Projects
where p.id == id
select new Project {ID = p.id, Name = p.name}).First();
}
public Project AddProject(string name)
{
var project = new Data.Projects {name = name};
Connection.Data.AddToProjects(project);
Connection.Data.SaveChanges();
return new Project {ID = project.id, Name = project.name};
}
public void DeleteProject(int id)
{
var project = (from p in Connection.Data.Projects
where p.id == id
select new Project {ID = p.id, Name = p.name}).First();
Connection.Data.DeleteObject(project);
Connection.Data.SaveChanges();
}
}
J'ai une classe similaire pour chacune des tables dans mon projet. Dois-je trouver un moyen d'utiliser une connexion de service avec des sous-classes ou la conserver en tant que classe de service par table?
génial, merci l'homme! –
D'accord sur l'approche basée sur les tâches. Mieux vaut ne pas penser à un service en tant que référentiel mais plutôt à un contrôleur de cas d'utilisation IMO. Je soulignerais cependant que, bien que 5 services distincts soient probablement une meilleure encapsulation, cela augmente parfois les coûts de configuration/maintenance/déploiement. Pas toujours mais cela vaut la peine de garder à l'esprit. – Stimul8d