Pregunta

Estoy aprendiendo ServiceStack y desarrollando una demostración simple para Helloworld, pero no pude encontrar espacio de nombres para ISservice interfaz, mi código según a continuación:

 public class Hello
{
    public string name { get; set; }
}
public class HelloResponse
{
    public string Result { get; set; }
}

public class HelloService :  **IService**<Hello>
{
    public object Execute(Hello request)
    {
        return new HelloResponse { Result = "Hello" + request.name };
    }
}

public class HelloAppHost : AppHostBase
{
    public HelloAppHost() : base("Hello Web Services", typeof(HelloService).Assembly) { }
    public override void Configure(Funq.Container container)
    {
        Routes.Add<Hello>("/hello")
            .Add<Hello>("/hello/{Name}");

    }
}

¿Alguien puede decirme qué espacio de nombres o DLL necesito agregar? IService ¿interfaz?

¿Fue útil?

Solución

Servicio de servicio Iserviciou003CT> está en el ServiceStack.ServiceHost espacio de nombres que vive en el Servicestack.interfaces.dll, ¿Por qué aquí está la clase?

https://github.com/servicestack/servicestack/blob/master/src/servicestack.interfaces/servicehost/iservice.cs

Nota: Si recién está comenzando, probablemente sea mejor heredar de ServiceStack.ServiceInterface.ServiceBaseu003CT> y anular el Correr() Método, que es una clase base útil que proporciona cosas como el manejo de excepciones automáticas para usted.

Si desea poder ejecutar un código diferente para diferentes verbos HTTP, por ejemplo, get/post/put/delete (es decir, creando servicios web de descanso) de los que desea heredar Base de restos En su lugar, anule sus métodos Onget/Onpost/Onput/OnDelete.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top