Ho un semplice servizio WCF Data Services e voglio esporre un'operazione di servizio come segue:Perché il mio metodo ServiceOperation non è presente nel mio codice proxy client di Servizi dati WCF?
[System.ServiceModel.ServiceBehavior(IncludeExceptionDetailInFaults = true)]
public class ProductDataService : DataService<ProductRepository>
{
// This method is called only once to initialize service-wide policies.
public static void InitializeService(IDataServiceConfiguration config)
{
config.SetEntitySetAccessRule("*",
EntitySetRights.ReadMultiple | EntitySetRights.ReadSingle);
config.SetServiceOperationAccessRule("*",
ServiceOperationRights.All);
config.UseVerboseErrors = true;
}
// This operation isn't getting generated client side
[WebGet]
public IQueryable<Product> GetProducts()
{
// Simple example for testing
return (new ProductRepository()).Product;
}
Perché non è il metodo di GetProducts
visibile quando aggiungo il riferimento al servizio sul client?
Sto eseguendo Visual Studio 2008 SP1 e .NET Framework 3.5 SP1. Ho anche scaricato e installato questo aggiornamento:
Le operazioni non sono visibili tramite il file .svc. Appaiono nel file di metadati che puoi vedere con questo url: http: // localhost: 3059/TestService.svc/$ metadata –