首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Umbraco 4.11中使用RazorPDF

如何在Umbraco 4.11中使用RazorPDF
EN

Stack Overflow用户
提问于 2013-08-12 13:14:13
回答 2查看 343关注 0票数 1

我正在使用Umbraco 4.11.8,并希望创建一个PDF。我有HTML代码,应该可以作为PDF下载

我找到了一个包RazorPDF,它在MVC示例中工作得很好。

但是当我在Umbraco尝试的时候,我不知道如何得到它。

我需要SurfaceController还是别的什么吗?

如果是,我如何说Umbraco使用我的(表面)控制器?

EN

回答 2

Stack Overflow用户

发布于 2013-08-12 13:56:01

您需要的最好的起点是这里:http://our.umbraco.org/documentation/Reference/Mvc/

但是不,严格地说,你不需要SurfaceController。如果您希望访问通过控制器发出的请求的Umbraco上下文,则只需要一个。

因此,如果您只想让一个控制器服务于您的PDF,您可以有一个标准的控制器实现。但是,您必须为此调整您的路线,这在上面的Umbraco文档中都有介绍。

编辑:

你需要这样的路线:

代码语言:javascript
复制
RouteTable.Routes.MapRoute(
    name: "PdfRazor",
    url: "PdfCreator/{action}"
);

您还需要将路径添加到Web.config以供Umbraco忽略,例如:

代码语言:javascript
复制
<add key="umbracoReservedPaths" value="~/umbraco,~/install,~/pdfcreator" />
票数 0
EN

Stack Overflow用户

发布于 2013-08-12 14:25:49

我把它当作答案,这样就更容易读了。请随意编辑。

我没有发现我的错或者我错过了什么。

我的控制器签名如下:public class PdfCreatorController : Controller

我想要调用的方法叫做public override ActionResult Pdf()

我的路线:

代码语言:javascript
复制
RouteTable.Routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    RouteTable.Routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
    );`. 

然后我试着像www.url.com/PdfCreator/Pdf一样调用我的控制器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18187953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档