entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

3votos

no puede obtener Metadatos de Servicio RestFul WCF

BUEN DIA!!!

Tengo el error al crear el siguiente y sencillo servicio con WCF REst

esta es la implementacion de la interface ....

using System.Linq;
using System.Runtime.Serialization;

namespace coRegionesService
{

    public class Regiones : IRegiones
    {
        RegionesServiceEntities db = new RegionesServiceEntities();

        public string Ciudades(int id)
        {
            var query = from t in db.Ciudad
                        where t.CiudadID == id
                        select new { t.NombreCiudad };
            var mObjeCiudad = query.SingleOrDefault();
            return mObjeCiudad.ToString();
        }

        public string Departamento(int id)
        {
            var query = from t in db.Departamento
                        where t.DepartamentoID == id
                        select new { t.NombreDepartamento };
            var mObjDepto = query.SingleOrDefault();
            return mObjDepto.ToString();
        }

        public string Paises(int id)
        {
            var query = from t in db.Pais
                        where t.PaisID == id
                        select new { t.NombrePais};
            var mObjPais = query.SingleOrDefault();
            return mObjPais.ToString();
        }
    }
}

y la interface es esta

using System.ServiceModel;
using System.ServiceModel.Web;

namespace coRegionesService
{
    [ServiceContract]
    public interface IRegiones
    {
        [OperationContract]
        [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "/Ciudad/{id}")]
        string Ciudades(int id);

        [OperationContract]
        [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "/Departamento/{id}")]
        string Departamento(int id);

        [OperationContract]
        [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "/Pais/{id}")]
        string Paises(int id);
    }
}

La operacion 'Ciudad' del contrato 'IRegiones' tiene una UriTemplate que espera un parametro llamado 'id', pero no hay ningun parametro de entrada con ese nombre en la operacion.

no se que puede estar sucediendo?

0voto

bl4z3r comentado

¿Como hiciste la llamada a ese metodo del Web API?

0voto

german comentado

hola blazer no! no he implementado esto en el Web Api, pruebo el servicio por WCF Cliente y/o por browser y me sale ese error que espera parametro lamado 'id'.

0voto

bl4z3r comentado

@german Disculpa, no me di a entender. Me refería en cómo llamas a esos métodos. ¿Por código o por una dirección URL? ¿Tenes ejemplos de esas llamadas a esos métodos, ya sea por el navegador o por un cliente WCF?

1voto

german comentado

hola blazer gracias por responder pues si ves en la interface [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle = .....
la idea es que se pueda llamar el metodo por url localhost:xxxx/Ciudades/2 <--- id
o dando el click a metodo en WCF cliente
Regiones --> Ciudades
--> Depártamento
--> Pais

0voto

bl4z3r comentado

@german ¿Podes agregar a tu pregunta una captura de pantalla de la excepción que se lanza y todo el Stack Trace del error de lo que quisiste hacer? La verdad, me esta costando saber donde esta exactamente tu error porque codigo parece funcional.

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta