servicestack,Razor,servicestack" /> servicestack,Razor,servicestack" />

如何在ServiceStatck Razor页面中导航&x2B;ServiceStackAPI?

如何在ServiceStatck Razor页面中导航&x2B;ServiceStackAPI?,razor,servicestack,Razor,servicestack,在我的webapp中 webApp \视图 \视图\学校 \Views\School\School.cshtml \Views\School\Schools.cshtml 在请求和响应类中: [Route("/v1/school", Verbs = "POST")] [DefaultView("School")] public class SchoolAddRequest : School, IReturn<SchoolResponse> { } public class S

在我的webapp中

webApp
\视图
\视图\学校
\Views\School\School.cshtml
\Views\School\Schools.cshtml

在请求和响应类中:

[Route("/v1/school", Verbs = "POST")]  
[DefaultView("School")]
public class SchoolAddRequest : School, IReturn<SchoolResponse>
{

}

public class SchoolResponse
{
    public School School { get; set; }
    public SchoolResponse()
    {
        ResponseStatus = new ResponseStatus();
        Schools = new List<School>();
    }
    public List<School> Schools { get; set; }        
    public ResponseStatus ResponseStatus { get; set; }
}
在学校。cshtml:

@inherits ViewPage<Test.Core.Services.SchoolResponse>
@{
    Layout = "_Layout";
}
<form action="/v1/School" method="POST">
   @Html.Label("Name: ")  @Html.TextBox("Name")
   @Html.Label("Address: ") @Html.TextBox("Address")
   <button type="submit">Save</button>
</form>

@if (@Model.School != null)
{
  @Html.Label("ID: ")  @Model.School.Id
}
这项工作:

http://test/views/school/
点击“保存”btn时,返回所需的响应,但浏览器上的url为:

http://test/v1/School
我原以为会是:

http://test/School 
我怎样才能让url正常工作。?难道不是吗
http://test/School
请求和响应。

http://test/school/
没有返回任何内容,因为您没有为路由实现请求DTO和相应的“
Get
”服务

您需要的是请求DTO:

[Route("/school", Verbs = "GET")]  
public class GetSchool : IReturn<SchoolResponse>
{

}
当您点击“保存”时,将通过路由“v1/school”向服务器发出“POST”请求,因为您指定的表单标签具有:

<form action="/v1/School" method="POST">


希望这有帮助。

http://test/school/
没有返回任何内容,因为您没有为路由实现请求DTO和相应的“
Get
”服务

您需要的是请求DTO:

[Route("/school", Verbs = "GET")]  
public class GetSchool : IReturn<SchoolResponse>
{

}
当您点击“保存”时,将通过路由“v1/school”向服务器发出“POST”请求,因为您指定的表单标签具有:

<form action="/v1/School" method="POST">

希望这有帮助

<form action="/v1/School" method="POST">