在C#中传递命名空间

时间:2014-11-19 09:46:52

标签: c# inheritance

我们在c#中有关于继承的练习。现在我的问题是我将在问号和if语句中放入什么来知道程序传递了Person类或Animal类或InventoryApplication命名空间下的任何类。 :)

private void AddButton_Click(object sender, EventArgs e)
{
     Logic_Layer.Logic logic = new Logic();
     //logic.Add<Person>();
}

namespace Logic_Layer
{

    public class Logic
    {
        public void Add<InventoryApplication>() where InventoryApplication : ?
        {
            //if { }
        }

        public void delete() { }
        public void edit() { }
        public void search() { }
        public void searchAll() { }
    }
}

1 个答案:

答案 0 :(得分:0)

您不能在约束中使用此类语句。但是,稍后在该方法中,您可以执行此操作:

if (typeof(myObject).Namespace == "InventoryApplication")
{
...
}

如果你想要测试的类(Animal,Person等)实现一个接口(比如IMyInterface),那会更好。

例如:

 void Add<T>(<T> param) where T : IMyInterface {/*...*/}