Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 用OpenRasta和Web表单实现简单CRUD_Asp.net_Crud_Openrasta - Fatal编程技术网

Asp.net 用OpenRasta和Web表单实现简单CRUD

Asp.net 用OpenRasta和Web表单实现简单CRUD,asp.net,crud,openrasta,Asp.net,Crud,Openrasta,我被要求在工作中研究OpenRasta作为MVC ASP.NET的替代品,并且作为一个起点,我试图从MVC ASP.NET网站复制电影教程 我非常喜欢OpenRasta的ReST风格,到目前为止,我已经有了一个简单的数据库和一个用于基于ID的GET的处理程序,形式为 ResourceSpace.Has.ResourcesOfType<Movie>() .AtUri("/movie/{id}") .

我被要求在工作中研究OpenRasta作为MVC ASP.NET的替代品,并且作为一个起点,我试图从MVC ASP.NET网站复制电影教程

我非常喜欢OpenRasta的ReST风格,到目前为止,我已经有了一个简单的数据库和一个用于基于ID的GET的处理程序,形式为

            ResourceSpace.Has.ResourcesOfType<Movie>()
                .AtUri("/movie/{id}")
                .HandledBy<MovieHandler>()
                .RenderedByAspx("~/Views/MovieView.aspx");
我在这里可能真的很笨,但我能以OpenRasta要求的方式发布和删除ASP.NET页面吗?我正在使用一个代码隐藏页面,但这不是我所关注的


我对ASP.NET不太熟悉(很久没有做过了),所以我可能遗漏了一些明显的东西,但我真的希望有一些指向正确方向的指针。

这意味着ASP.NET webforms中的回发模型(也称为asp.net webforms基础结构创建一个大型表单标记以将特定于asp.net的数据连续回发到页面的行为)不受支持,因此您在webforms控件上使用的任何事件都将不起作用

如果您习惯于MVC风格的交互,那么您就知道如何使用表单标记,以便像往常一样创建新电影

<form method="post">
  <fieldset>
    <input type="text" name="Name" />
    <input type="submit" />
  </fieldset>
代码在我的头脑中编译,可能需要在放入编译器之前进行现实检查


请注意,如果可以的话,最好不要使用webforms引擎,因为还有更好的选择(razor、spark,无论您决定插入什么).

我找到了OpenRasta Razor编解码器,有关于如何使用它的文档吗?我应该在ASP.NET web表单还是MVC ASP.NET项目中使用它?到目前为止还没有文档,因为它正在迁移到新的所有者,我只打包了它。代码有一个演示项目来检查连接它所需的配置。Th我们支持松散和编译视图,因此您的视图不一定需要asp.net项目,但是像resharper这样的工具可能会坚持在没有正确项目类型的情况下不允许您正确访问模板。
<form method="post">
  <fieldset>
    <input type="text" name="Name" />
    <input type="submit" />
  </fieldset>
<% using(scope(Xhtml.Form<Movie>().Post())) { %>
   <%= Xhtml.TextBox<Movie>(_=>_.Name) %>
<% } >
public Movie Post(Movie movie) {
  // create the movie instance in your db or whatever
  return new OperationResult.SeeOther { RedirectLocation = movie.CreateUri() };
}