c# - Razor 中的类型检查

标签 c# asp.net-mvc asp.net-mvc-3 razor typechecking

我有public IList<ListingHistoryItem> History { get; set; }在我的一个页面的 View 模型中。 ListingHistoryItem是一个抽象类,有两个子类BidDtoCommentDto .我这样做的原因是,该列表有某种新闻提要,可以显示对该列表的任何出价或评论。

所以无论如何,我想做的是,在我看来,检查 History 元素的具体类型,然后相应地显示它。以下是我正在努力做到的:

    @for (int i = 0; i < Model.History.Count; i++)
    {
        var feed = Model.History[i];

        if (feed.GetType().FullName.Equals(Sharwe.MVC.Models.BidDto))

但是最后一行给出了以下异常:

Sharwe.MVC.Models.BidDto' is a 'type', which is not valid in the given context

那么我应该如何检查类型呢?还是我在这里完全错了?

最佳答案

像这样尝试:

if (feed is Sharwe.MVC.Models.BidDto)
{
    ...
}

关于c# - Razor 中的类型检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5695223/

相关文章:

c# - 不确定如何模拟 INancyModule.View 方法?

c# - 如何在 C# 中使用 "param"让这个例子工作?

c# - 将用户传递给 ViewModel

asp.net-mvc - 放弃 DDD,但需要它的一些好处

asp.net-mvc - 未找到必需属性 'pageBaseType' - 启动我的 MVC 3 应用程序时出现 YSOD

c# - 如何查看 ASP.Net MVC 中调用的每个 Controller 和操作方法?

c# - 从 JWT token 获取声明、权限和角色

asp.net-mvc - 我如何在服务器端存储不记名 token 以及验证如何在 Web API 2 中注销时删除?

c# - Autofac 使用 Assembly.Load 注册 dll

asp.net - "Dynamic operations can only be performed in homogenous AppDomain"错误