标签: razorengine

RazorEngine布局

我正在使用Razor引擎https://github.com/Antaris/RazorEngine来解析我的电子邮件模板的正文.是否可以定义布局并包含其他.cshtml文件?例如,公共页眉和页脚.

c# razorengine

46
推荐指数
1
解决办法
2万
查看次数

RazorEngine与@Html有关

我正在使用RazorEngine来呈现一些基本内容(一个非常粗糙的内容管理系统).

它很有用,直到我将任何@Html语法包含到标记中.

如果标记包含@html,我会收到以下错误:

无法编译模板.当前上下文中不存在名称"Html"

这是呈现标记的视图:

@Model Models.ContentPage

@{
    ViewBag.Title = Model.MetaTitle;
    Layout = "~/Views/Shared/Templates/_" + Model.Layout + "Layout.cshtml";

}
@Html.Raw(RazorEngine.Razor.Parse(Model.Markup, Model))
Run Code Online (Sandbox Code Playgroud)

我在Codeplex网站上看到了RazorEngine使用@Html(我知道那里的版本已经过时了,我通过nuget得到了我的版本).

对此的任何帮助都会很棒.

razorengine

32
推荐指数
5
解决办法
3万
查看次数

服务器无法附加标头在HTTP标头发送后,@ Html.AntiForgery发送异常

我正在开发一个asp.net mvc 5应用程序,我试图通过应用下面的代码重定向到ReturnUrl:

[HttpPost]
[AllowAnonymous]
public ActionResult Login(UserLogin model, string returnUrl)
{
    if (ModelState.IsValid)
    {
        string EncryptedPassword = GetMD5(model.Password);
        if (DataAccess.DAL.UserIsValid(model.Username, EncryptedPassword))
        {
            FormsAuthentication.SetAuthCookie(model.Username, true);
            if (String.IsNullOrEmpty(returnUrl))
            {
                return RedirectToAction("Index", "Home");
            }
            else
            {
                Response.Redirect(returnUrl);
            }
        }
        else
        {
            ModelState.AddModelError("", "Invalid Username or Password");
        }
    }
    return View();
}
Run Code Online (Sandbox Code Playgroud)

上面的代码工作正常,但问题是,当我发布登录表单时,它给了我一个我从未遇到过的异常,并且我很难解决在Login.cshtml视图中生成的异常,在线:

@Html.AntiForgeryToken()
Run Code Online (Sandbox Code Playgroud)

它抛出的异常:

发送HTTP标头后,服务器无法附加标头.

我研究了很多,但我无法得出结论.当我删除@ Html.AntiForgeryToken()行时,我的应用程序工作正常,但我不想这样做,我希望我的应用程序保持跨站点请求保护.

任何人都可以帮助我,我如何摆脱这个例外?

asp.net-mvc-5 razorengine

28
推荐指数
2
解决办法
3万
查看次数

RazorEngine vs RazorTemplates vs RazorMachine

有人可以解释它们之间的区别,利弊

RazorEngine

RazorTemplates

RazorMachine

我需要选择一个用于生成电子邮件.这些要求很常见:快速,易用.似乎所有这些都具有我需要的所有功能但是因为我是Razor新手,我不太清楚哪一个更好.

谢谢.

.net razor razorengine

20
推荐指数
1
解决办法
4828
查看次数

RazorEngine字符串布局和部分?

我像这样使用剃须刀引擎:

public class EmailService : IService
{
    private readonly ITemplateService templateService;

    public EmailService(ITemplateService templateService)
    {
        if (templateService == null)
        {
            throw new ArgumentNullException("templateService");
        }
        this.templateService = templateService;
    }

    public string GetEmailTemplate(string templateName)
    {
        if (templateName == null)
        {
            throw new ArgumentNullException("templateName");
        }
        Assembly assembly = Assembly.GetAssembly(typeof(EmailTemplate));
        Stream stream = assembly.GetManifestResourceStream(typeof(EmailTemplate), "{0}.cshtml".FormatWith(templateName));
        string template = stream.ReadFully();
        return template;
    }

    public string GetEmailBody(string templateName, object model = null)
    {
        if (templateName == null)
        {
            throw new ArgumentNullException("templateName");
        }
        string template = GetEmailTemplate(templateName); …
Run Code Online (Sandbox Code Playgroud)

c# embedded-resource razorengine

19
推荐指数
2
解决办法
1万
查看次数

RazorEngine:不能使用Html.Raw

在asp.net外面使用RazorEngine当我尝试使用@Html.Raw("html string here")以下方法编写原始html时遇到此错误:

无法编译模板.当前上下文中不存在名称"Html"

你能帮助我吗?

谢谢!

asp.net-mvc razor razorengine

19
推荐指数
2
解决办法
7319
查看次数

如何让intellisense与RazorEngine一起使用?

我正在尝试配置RazorEngine,以便intellisense在视图上工作.我使用nuget添加了RazorEngine和Microsoft.AspNet.Mvc.我创建TestView.cshtml并声明,@model MyModel但它说The name 'model' does not exist in the current context.我也不能在视图中使用intellisense.

我想念这里的任何一步吗?如何在View中启用intellisense?

.net c# asp.net asp.net-mvc razorengine

17
推荐指数
3
解决办法
9158
查看次数

无法安装Microsoft.AspNet.Razor 3.0.0

我正在开发一个ASP.NET项目,我需要在其中进行简单的HTML模板化.

最漂亮的解决方案似乎是RazorEngine,它依赖于Microsoft.AspNet.Razor.但是,尝试通过Nuget安装Microsoft.AspNet.Razor时,会显示以下错误消息:

安装'Microsoft.AspNet.Razor 3.0.0'.
成功安装了"Microsoft.AspNet.Razor 3.0.0".
将"Microsoft.AspNet.Razor 3.0.0"添加到EBulkDBSManagementApp.
卸载'Microsoft.AspNet.Razor 3.0.0'.
已成功卸载"Microsoft.AspNet.Razor 3.0.0".
安装失败.回滚...
无法安装包'Microsoft.AspNet.Razor 3.0.0'.您正在尝试将此软件包安装到以".NETFramework,Version = v4.0"为目标的项目中,但该软件包不包含与该框架兼容的任何程序集引用或内容文件.有关更多信息,请与软件包作者联系.

有解决方案吗

asp.net razor razorengine

15
推荐指数
1
解决办法
1万
查看次数

如何使用剃须刀在网址中转义"@"符号

我知道这可能会非常简单,就像我还没有得到的"陷阱"一样; 但是,我一直在努力逃避@以下网址中的符号.

<a href="https://www.google.co.uk/maps/place/XXXXXXXXXXXXXXXX/@55.000000,-1.000000,17z/data=!3m1!4b1!4m2!3m1!1s0x487e736c74d13649:0xe560f3b38693aec3">View on Google Maps</a>
Run Code Online (Sandbox Code Playgroud)

我已经尝试与第二逃避它@

<a href="https://www.google.co.uk/maps/place/XXXXXXXXXXXXXXXX/@@55.000000,-1.000000,17z/data=!3m1!4b1!4m2!3m1!1s0x487e736c74d13649:0xe560f3b38693aec3">View on Google Maps</a>
Run Code Online (Sandbox Code Playgroud)

然而,这产生了以下YSOD

分析器错误消息: 我错过了什么?

asp.net-mvc escaping umbraco razor razorengine

15
推荐指数
3
解决办法
6315
查看次数

孤立的RazorEngine无法将模型传递给不同的AppDomain

当我在没有EditHistory成员的情况下渲染我的模板时,这是有效的.但是,当我添加我的应用程序中的其他成员时,我得到一个异常Could not load file or assembly 'Models, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.Models是包含ContentModel,EditHistory和UserDetail的项目.

public class ContentModel
{
    public string Html { get; set; }
    public string Title { get; set; }
    public EditHistory History { get; set; }
}

public class EditHistory
{
    public IReadOnlyCollection<UserDetail> Authors { get; set; }
}

public class UserDetail
{
    public string Name { get; set; }
    public string EmailAddress { get; set; } …
Run Code Online (Sandbox Code Playgroud)

.net asp.net isolation razorengine

15
推荐指数
1
解决办法
1057
查看次数