草庐IT

cobub-razor

全部标签

c# - Razor View 上的 If 语句(对于 CSS 类)

我需要根据是否阅读消息在CSS类之间切换。简单来说应该是这样的:if(item.status=="Unread"){...}else{...}虽然我很难实现这一目标。有什么可以告诉我完成这项工作的好处吗?我应该使用HTML帮助器还是什么?这是到目前为止的完整代码:@foreach(variteminModel){if(item.status=="Unread"){@Html.DisplayFor(modelItem=>item.timestamp)@Html.DisplayFor(modelItem=>item.subject)@Html.DisplayFor(modelItem=>i

c# - 打印和/或修改 razor 编译器服务用于编译 cshtml 的 c# 版本

我希望能够找出razor使用哪个C#版本来编译我的cshtml模板。我想要这个的原因是thisbreakingchange.我们在foreach语句中有一个lambda,它在我们的本地开发机器上运行良好,但在我们的测试环境(没有安装C#5)上产生了一个错误。这个错误非常难以调试(我们甚至复制了所有测试环境DLL和数据库,但仍然无法重现该错误)。因此,为了防止将来出现这种开发/测试差异,我想知道是否有一种方法可以指定razor应该用来编译cshtml文件的C#版本。如果我可以检查razor使用的C#版本(通过打印),那就太好了。更新:根据要求,提供有关此行为如何发生的更多详细信息。我们使

c# - ASP.NET MVC3 中的 Razor 和接口(interface)继承 : why can't this property be found?

我在ASP.NETMVC3应用程序中的一个RazorView有一个奇怪的问题。当我将其值写入调试器控制台时,该属性似乎确实存在,但我收到一条错误消息,告诉我无法找到该属性。我的View将一个名为FormEditViewModel的类作为其模型。FormEditViewModel有一个IForm类型的属性,一个继承自另一个接口(interface)IFormObject的接口(interface)。IFormObject定义了一个属性Name,因此任何实现IForm的东西都必须实现一个名为Name的属性。具体类型Form实现接口(interface)IForm并根据需要定义Name属性。

c# - 如何将 lambda 传递给 Razor 辅助方法?

我有一个Razor辅助方法需要接受Func这将返回一些HTML内容以打印出来。这是我最初拥有的:@helpernode(stringtitle,Funcdescriptions){....@descriptions()....}@node("title",newFunc(()=>{returnnewHelperResult(@"desc1""desc2");}))不幸的是,我的文本从未被打印出来。也没有错误。所以我了解了内联助手,并将调用方法更改为:@node("title",@"desc1""desc2")但是现在我得到一个编译错误说"Delegate'System.Func'doe

c# - 使用 Razor View 引擎将 MVC 2 项目迁移到 MVC 3 的最佳方法是什么?

使用RazorView引擎将MVC2项目迁移到MVC3的最佳方法是什么? 最佳答案 详情请见thispost来自ScottGu的博客(请参阅如何升级现有项目部分)。我用了MVC3projectupgradetool并且在运行应用程序后只有几个特定于我的应用程序的小问题。 关于c#-使用RazorView引擎将MVC2项目迁移到MVC3的最佳方法是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/

c# - Razor 类库也可以打包静态文件(js、css 等)吗?

也许duplicateofthis已经,但由于该帖子没有任何答案,所以我发布了这个问题。新RazorClassLibrary很棒,但它不能打包库文件(如jQuery、共享CSS)。我能否以某种方式在多个Razor页面项目中重用CSS,无论是使用Razor类库还是其他任何东西(我的目的是,多个网站使用相同的CSS,并且一次更改适用于所有项目)。我已经尝试在Razor类库项目中创建文件夹wwwroot,但它没有按预期工作(我可以理解为什么它不应该工作)。 最佳答案 Ehsan的回答在询问时是正确的(对于.NETCore2.2),对于.N

c# - Razor View IsAuthenticated 未按预期工作

我创建了一个简单的MVC应用程序,该应用程序使用新项目随附的.NetMembershipProvider。我正在尝试让标签正确显示。我可能不明白这一点,但这是我的代码:@ViewBag.TitleSuburbanCustomerPortal@Html.Partial("_LogOnPartial")@if(Request.IsAuthenticated){@Html.ActionLink("ChangePassword","ChangePassword","Account")}else{@Html.ActionLink("Logon","Logon","Account")@Html.A

c# - ASP.NET MVC - 从另一个@helper 调用 Razor @helper

我一直在基于ScottGu'spost在Razor中实现一些@helper函数,事情进展顺利。但我想知道的是,是否可以从另一个调用一个@helper。例如,我有以下助手显示DateTime?的日期和时间:@helperDateTimeDisplay(DateTime?date){if(date.HasValue){@date.Value.ToShortDateString()at@date.Value.ToShortTimeString()}else{-}}这很好用,但在某些情况下我还有其他不可为null的字段,所以我尝试添加它以保持干燥:@helperDateTimeDisplay(

c# - 如何将 Razor View 转换为字符串?

我想将我的RazorView用作发送电子邮件的某种模板,所以我想在View中“保存”我的模板,将其作为字符串读入Controller,进行一些必要的替换,然后发送它。我有可行的解决方案:我的模板作为HTML页面托管在某个地方,但我想将它放入我的应用程序中(即在我看来)。我不知道如何在我的Controller中将View作为字符串读取。 最佳答案 我使用以下内容。将它放在你的基本Controller上,如果你有一个,这样你就可以在所有Controller中访问它。publicstaticstringRenderPartialToStr

c# - 使用 ASP.NET Razor View 引擎获得内联代码块的最简洁方法?

这个有效:class="bselected"}}>@Html.ActionLink("Map&Directions",MVC.Biz.Show(Model.SingleBiz.BizName,"map",string.Empty))但这很难看……有没有更好、更干净的方法来做到这一点?在此代码中,我正在检查某些View数据是否为​​null或为空,如果是则添加一个类。或者是否有另一种技术可以更好地完成此任务? 最佳答案 我昨天发布了一些处理这种事情的Html扩展方法:HowtoconciselycreateoptionalHTMLat