razor-declarative-helpers
全部标签 我有带Razor引擎的MVC3C#项目。将动态数据写入_Layout.cshtml的方法和最佳实践是什么?例如,也许我想在我网站的右上角显示用户名,并且该名称来自Session、DB或基于用户登录的任何内容。更新:我也在寻找将某些数据呈现到布局元素中的良好做法。例如,如果我需要根据登录用户的凭据呈现特定的CSS文件。(对于上面的例子,我想到了使用UrlHelpers。) 最佳答案 VisualStudio创建的默认Internet应用程序使用_LogOnPartial.cshtml来执行此操作。用户名值在HomeController
我正在ASP.NETMVC4、Twitter.Bootstap3.0.0和Razor中开发一个项目。在View中,我需要根据属性值显示按钮。使用switch语句,下面的示例不起作用(不显示任何内容):@switch(Model.CurrentStage){caseEnums.Stage.ReadyToStart:Html.ActionLink(Language.Start,"Start",new{id=Model.ProcessId},new{@class="btnbtn-success"});break;caseEnums.Stage.Flour:Html.ActionLink(La
我正在尝试向VS2015中的C#代码添加一些JSON解析,但我找不到:系统.Web.Helpers如MS文档所建议的那样。我看过其他人的类似性质的问题(几乎都是早期版本),答案都说将其添加到程序集/框架对话框中。问题是它没有出现在那个对话框中,我看到人们谈论的许多其他事情也没有出现。如果能帮我解决这个问题,我将不胜感激。这是我有权访问的列表:编辑:同时添加了扩展窗口 最佳答案 这个问题有点老,但这里有一个简单的解决方案——微软似乎只是将这个库移动到一个名为“microsoft-web-helpers”的Nuget包中。安装该软件包似
在Resharper5中,以下代码导致list出现警告“Parametercanbedeclaredwithbasetype”:publicvoidDoSomething(Listlist){if(list.Any()){//...}foreach(variteminlist){//...}}在Resharper6中,情况并非如此。但是,如果我将方法更改为以下内容,我仍然会收到该警告:publicvoidDoSomething(Listlist){foreach(variteminlist){//...}}原因是,在这个版本中,list只枚举一次,所以改成IEnumerable不会自动
我有以下内容,但它因NullReferenceException而失败:@item.FundPerformance.Where(xx=>fund.Id==xx.Id).FirstOrDefault().OneMonth??-OneMonth定义为publicvirtualdecimal?OneMonth{get;set;}失败时它的值为空。我认为NullCoalesce运算符会测试它是否为null,如果是,则返回运算符右侧的值?我需要更改什么才能使其正常工作? 最佳答案 如您所写,razor语法以“OneMonth”结尾。这??被解
我声明了一个枚举:publicenumHeightTypes{Tall,Short}现在我想像这样在我的Razor页面上使用它:@if(Model.Meta.Height==HeightTypes.Tall)但是有一个问题,因为我得到一个错误。有什么方法可以告诉razor页面关于我的枚举的信息吗? 最佳答案 您的枚举声明有误(删除结尾的;):publicenumHeightTypes{Short=0,Tall=1}那么下面的测试应该有效:@if(Model.Meta.Height==HeightTypes.Tall){}您只需确保您
我使用VisualStudio.NETCore2.1SDK+React模板创建了一个项目。我在运行项目时遇到了以下错误:Oneormorecompilationreferencesaremissing.Ensurethatyourprojectisreferencing'Microsoft.NET.Sdk.Web'andthe'PreserveCompilationContext'propertyisnotsettofalse.Thetypeornamespacename'Hosting'doesnotexistinthenamespace'Microsoft.AspNetCore.R
如果一个html助手将一个字典作为参数,我该如何使用它?我试过:但这行不通。 最佳答案 (){{"key","value"},{"key1",someObj},{"blah",1}}); 关于c#-htmlhelper接受一个字典,如何使用这个参数?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3257160/
我正在尝试使用Razor模板来执行此操作:@if(isNew){}...@if(isNew){}错误是:cannotresolvethesymbol'div'Razor不喜欢IF子句中的结束div标记,我怎样才能让它工作?我必须使用转义吗? 最佳答案 Razor不喜欢像这样拆分开始/结束标记,因为它无法正确解析HTML,因此您必须将它们转义为纯文本:@if(isNew){@:}...@if(isNew){@:}更传统的方法是在div中重复标记(使用部分或其他方式)——哪种方法更可取,我想说,取决于条件div之间标记的性质:@if(i
我在C#WebForms应用程序中使用RazorHelpers。以下代码在调用时编译并呈现A-OK:@helperMemberListItem(stringfirstname,stringlastname,stringavatarUrl){@firstname@lastname@avatarUrl}输出(对助手的两次调用):BryanArnold../../Resources/Images/Placeholders/generic-user-image.jpgDougBland../../Resources/Images/Placeholders/generic-user-image.