Razor 在WebMatrix Webgrid中显示文档链接(href)的条件

Razor 在WebMatrix Webgrid中显示文档链接(href)的条件,razor,conditional-statements,webmatrix,webgrid,Razor,Conditional Statements,Webmatrix,Webgrid,当文档(路径)存在时,我想在Webgrid中显示“DOC”链接 文档完整路径由通用路径(存储在设置表中的路径数据)和文档特定路径(存储在另一个表中的路径数据)构成 下面的选项将起作用,但没有条件,也没有构建的路径 meetingsGrid.Column("Agenda", format: @<a href="document full path">DOC</a>) meetingsGrid.Column(“议程”,格式:@) 这不起作用: meetingsGrid.C

当文档(路径)存在时,我想在Webgrid中显示“DOC”链接

文档完整路径由通用路径(存储在设置表中的路径数据)和文档特定路径(存储在另一个表中的路径数据)构成

下面的选项将起作用,但没有条件,也没有构建的路径

meetingsGrid.Column("Agenda", format: @<a href="document full path">DOC</a>)
meetingsGrid.Column(“议程”,格式:@)
这不起作用:

meetingsGrid.Column("Agenda", format: @<a href="generic path" + "document specific path">DOC</a>)
meetingsGrid.Column(“议程”,格式:@)
我试过这个:

meetingsGrid.Column("Agenda", format: @<a href="@Url.Action(Path.Combine(@genericpath,specificpath))">DOC</a>)
meetingsGrid.Column(“议程”,格式:@)
我尝试添加一些条件,但即使使用完整路径,我也无法使其工作:-(

meetingsGrid.Column(“议程”,格式:@if(meetingsData.AgendaPath!=null){@}else{@Html.Raw(“”)}
meetingsGrid.Column(“议程”,格式:(item)=>@Html.Raw((item.AgendaPath!=null)?(@):“”)
感谢您的帮助

至少在webMatrix 1.0(我还没有使用2.0)中,您必须在format参数中明确指出要发出html。以下是我的生产代码示例:

format: @<text><a href="/Dashboard/DealerInfo/@item.Dealer">@item.Dealer</a> </text>
格式:@
或者,如果变量可以为null,则使用变量:

format:  ( meetingsData.AgendaPath.AgendaPath == null ) ? @<text>""</text> : @<text><a href="/Dashboard/DealerInfo/@item.Dealer">@item.Dealer)</a> </text>
格式:(meetingsData.AgendaPath.AgendaPath==null)?@“”:@

其中?运算符表示,如果?前面的语句为true,请返回空字符串,否则请返回所需的href。

您在我的@item.Dealer处放置了什么?您应该能够放置@item.AgendaPath。即使item.AgendaPath为null,我相信不会发出任何消息,但它不会崩溃。我修改了答案以测试nullc更正,抱歉。我认为“item”是一个动态SQL查询,“Dealer”是变量“meetingsData.AgendaPath”。构造的路径现在可以工作了,但我仍然需要条件语句来避免指向文件夹的“DOC”链接(href=“@App)。documentsPath@Session[CondoName]@item.AgendaPath”>DOCyes,你是对的。项目是一个疏忽,它不应该是meetingsData.AgendaPath吗?system.collections.generic.ienumerable不包含AgendaPath的定义。。。
format:  ( meetingsData.AgendaPath.AgendaPath == null ) ? @<text>""</text> : @<text><a href="/Dashboard/DealerInfo/@item.Dealer">@item.Dealer)</a> </text>