Sto costruendo un'applicazione che recupera i dati dell'elenco di Sharepoint tramite un servizio Web SPlists.Lists . Per creare un'istanza del servizio web, ho la seguente classe:
class SharepointServiceCreator
{
public SPlists.Lists createService()
{
listsService.Url = "http://wss/sites/SPLists/_vti_bin/lists.asmx";
listsService.Credentials = System.Net.CredentialCache.DefaultCredentials;
SPlists.Lists listsService=new SPlists.Lists();
}
}
Sono preoccupato che questa non sia una buona astrazione OOP, però, perché per creare questo servizio altrove nella mia applicazione, avrei bisogno del seguente codice:
class someClass
{
public void someMethod()
{
SharepointServiceCreator s=new SharepointServiceCreator()
SPlists.Lists listService=s.createService()
}
}
Dovendo usare dichiarare l'istanza di listService in someMethod come tipo SPlists.Lists sembra sbagliata, perché significa che someClass deve sapere come viene implementato SharepointServiceCreator . O è ok?