如何在OpenRasta中返回静态HTML和/或Javascript

|| 我正在使用OpenRasta 2.0,并在控制台应用程序中托管。 我希望能够从此设置返回一些静态HTML页面和JavaScript文件,例如:    /index.html    /jquery.js 这些文件是完全静态的,即不需要处理程序或资源。 我已将适当的文件添加到项目中,并最初尝试使用以下语法:
ResourceSpace.Has
.ResourcesOfType<object>()
.AtUri(\"/\")
.HandledBy<HtmlHandler>()
.RenderedByAspx(\"~/Views/IndexView.aspx\");
.aspx文件将添加到项目\'Views \'下的项目中,并将生成操作设置为\'Embedded Resource \'。尝试解析虚拟路径时,这会在运行时导致NullReferenceException。如果我将文件的生成操作设置为\'Compile \',那么它将无法编译,因为控制台项目无法理解ASPX。 如果引用了WebForms编解码器,我还尝试了以下速记语法:
ResourceSpace.Has
.TheUri(\"/jquery.js\")
.ForThePage(\"~/Views/jquery.js\");
但这遇到了与我最初的方法相同的问题,尽管确实消除了对虚拟Handler的需求。据我所知,由于无法编译ASPX文件,因此无法在控制台应用程序中使用WebForms编解码器。 我能够使用Razor编解码器返回HTML,因为这希望可以嵌入视图模板。但是-我无法使用相同的技术返回具有适当媒体类型的JavaScript文件,并且不得不将原本静态的文件转换为定义了@resource的.cshtml文件。 我找不到在线使用OpenRasta返回静态HTML和/或JavaScript的示例。我希望为此找到一个专用的配置API,例如\“ TheUri \”语法,但独立于WebForms编解码器。 我可以创建自己的\'EmbeddedFileHandler \'来返回静态嵌入式文件的内容,但是我觉得我丢失了一些东西,因为这是一个非常简单的用例...     
已邀请:
        依赖于被初始化的asp.net管道的任何内容(例如aspx Webforms页面)都无法编译,因为BuildProvider不能这样做,主要是因为Webforms与asp.net管道紧密耦合。 OR 2并非真正被设计为用作asp.net之外的完整Web堆栈,以提供静态内容,因为通常主机环境更适合这样做,但这无疑是我们要解决的问题在3.0中。 我的建议是将FileInfo注册为资源,创建一个处理程序,该处理程序可以扫描文件系统中所需的文件,并提供自己的编解码器,该编解码器可以流数据本身或为该API调用API。托管http侦听器。它应该是大约20行代码顶部,并且会成为一个不错的博客文章。 :)     

要回复问题请先登录注册