0

我有以下代码需要评估其类型,尽管我不确定如何在 mvc 1 中执行此操作?示例底部的 show 方法突出显示了我需要评估类型是 Car 还是 Boat 的问题。任何人都可以建议如何做到这一点!非常感谢詹姆斯

public interface IPanel
{
    string Name { get; }
}

public class CarPanel : IPanel
{
    public string Name
    {
        get { return "Hello Car"; }
    }
}

public class BoatPanel : IPanel
{
    public string Name
    {
        get { return "Hello Boat"; }
    }
}

...

var list = new List<IPanel>();

list.Add(new BoatPanel());
list.Add(new CarPanel());


// In the view

foreach (var p in ViewData.Model.Panels)
{ 
    <% Html.RenderAction<PanelController>(x => x.Show()); %> 
}


// PanelController


public ActionResult Show()
{
    var model = <T> // Problem: Am I a Boat or Car?
4

1 回答 1

0

使用is运算符。

if(model is BoatPanel)
{
    //your code
}
if(model is CarPanel)
{
    //your code
}

is 运算符用于检查泛型对象是否属于所需类型。

希望能帮助到你 :)

于 2013-01-29T08:34:00.123 回答