2011-04-17 4 views
1

J'ai public IList<ListingHistoryItem> History { get; set; } dans un de mes modèles de vue de pages. Le ListingHistoryItem est une classe abstraite et a deux sous-classes BidDto et CommentDto. La raison pour laquelle je le fais de cette façon est parce que, la liste a une sorte de fil de nouvelles qui affiche des offres ou des commentaires sur la liste. De toute façon, ce que j'essaie de faire est, à mon avis, de vérifier le type concret de l'élément History, puis de l'afficher en conséquence. Voilà comment je suis en train de le faire:Type de vérification dans Razor

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

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

Mais cette dernière ligne donne l'exception suivante:

Sharwe.MVC.Models.BidDto » est un « type », qui n'est pas valide dans le contexte donné

Alors, comment suis-je censé vérifier le type? Ou est-ce que je le fais totalement faux ici?

Répondre

5

Essayez comme ceci:

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

je ne savais pas le mot-clé 'is' pourrait être utilisé à l'intérieur des vues Razor. Merci pour l'indice. :) – Kassem