2016-04-22 26 views
1

ServiceStackでサービスを行っていますが、問題が発生しています。要求パラメータが表示されないので、メソッドを呼び出すと、要求のすべてのパラメータがnullになります。私が書くのブラウザで、だから、ServiceStack要求パラメータがありません

public class AppHost : AppSelfHostBase 
{ 
    public AppHost() 
     : base("CallbackServer", typeof(CallbackServer).Assembly) 
    { 
    } 

    public override void Configure(Container container) 
    { 
    } 
} 

public class CallbackServer : Service 
{ 
    public HttpResult Post(EventoCliente request) 
    { 
     request.TimeReceived = DateTime.Now; 
     Task.Factory.StartNew(() => Program.EventArrived(request)); 
     return new HttpResult(HttpStatusCode.OK,"OK"); 
    } 
} 

[Route("/turno", "Post")] 
public class EventoCliente : IReturn<EventoClienteResponse> 
{ 
    public TurnoCliente Turno; 
    public string Sucursal; 
    public string[] Puestos; 
    public DateTime? TimeReceived; 
} 

public class EventoClienteResponse 
{ 
    public ResponseStatus ResponseStatus { get; set; } 
} 

static void Main() 
{ 
    var appHost = new AppHost(); 
    appHost.Init(); 
    appHost.Start("http://*:9900/NesrEmulator/"); 
} 

:ここ はコードでhttp://localhost:9900/NesrEmulator、と私は方法EventoClienteを見ることができますが、私は(そこaren't)リクエストのパラメータを参照してくださいcan't。 Here is a screenshot of what i mean...

私は間違っていますか? おかげ

答えて

2

あなたのDTOのない公共フィールドがこれだけにそれを変更パブリックプロパティを使用する必要があります。

[Route("/turno", "Post")] 
public class EventoCliente : IReturn<EventoClienteResponse> 
{ 
    public TurnoCliente Turno { get; set; } 
    public string Sucursal { get; set; } 
    public string[] Puestos { get; set; } 
    public DateTime? TimeReceived { get; set; } 
} 
関連する問題