jjzjj

c# - typeof 和 is 关键字有什么区别?

两者之间的确切区别是什么?//WhencallingthismethodwithGetByType()publicboolGetByType(){//thisreturnstrue:returntypeof(T).Equals(typeof(MyClass));//thisreturnsfalse:returntypeof(T)isMyClass;} 最佳答案 您应该在实例上使用isAClass而不是比较类型:varmyInstance=newAClass();varisit=myInstanceisAClass;//trueis也

c# - Ninject + Bind 通用存储库

我正在尝试将通用IRepository接口(interface)绑定(bind)到我的通用Repository-但它总是返回null?我试过很多东西,比如:Bind(typeof(IRepository)).To(typeof(Repository));Bind(typeof(IRepository)).To(typeof(Repository));但是,如果我传入一个非通用接口(interface)和类,那么它会像梦一样工作吗? 最佳答案 Bind(typeof(IRepository)).To(typeof(Repository

c# - Ninject + Bind 通用存储库

我正在尝试将通用IRepository接口(interface)绑定(bind)到我的通用Repository-但它总是返回null?我试过很多东西,比如:Bind(typeof(IRepository)).To(typeof(Repository));Bind(typeof(IRepository)).To(typeof(Repository));但是,如果我传入一个非通用接口(interface)和类,那么它会像梦一样工作吗? 最佳答案 Bind(typeof(IRepository)).To(typeof(Repository

c# - 作为委托(delegate)的构造函数 - 在 C# 中是否可能?

我有一个像下面这样的类:classFoo{publicFoo(intx){...}}我需要像这样向某个方法传递一个委托(delegate):delegateFooFooGenerator(intx);是否可以直接将构造函数作为FooGenerator值传递,而无需键入:delegate(intx){returnnewFoo(x);}?编辑:就我个人而言,问题涉及.NET2.0,但也欢迎提供3.0+的提示/回复。 最佳答案 我假设您通常会在工厂实现中做这样的事情,其中​​实际类型在编译时是未知的...首先,请注意更简单的方法可能是创建

c# - 作为委托(delegate)的构造函数 - 在 C# 中是否可能?

我有一个像下面这样的类:classFoo{publicFoo(intx){...}}我需要像这样向某个方法传递一个委托(delegate):delegateFooFooGenerator(intx);是否可以直接将构造函数作为FooGenerator值传递,而无需键入:delegate(intx){returnnewFoo(x);}?编辑:就我个人而言,问题涉及.NET2.0,但也欢迎提供3.0+的提示/回复。 最佳答案 我假设您通常会在工厂实现中做这样的事情,其中​​实际类型在编译时是未知的...首先,请注意更简单的方法可能是创建

c# - 是否可以在枚举中保存类型(使用 "typeof()")?

所以我在XNA、C#4.0中创建一个游戏,我需要管理很多PowerUps(在代码中都是从类“PowerUp”继承的),并处理PowerUps的后端管理我当前有一个枚举PowerupEffectType,每个子类PowerUp都有一个值。最后,在代码中,我需要将PowerupEffectType转换为Powerup类型(属于Type类,通常使用typeof([classname])实现)。因为这是一个小组项目,我想尽可能地将PowerupEffectType的每个值与其对应的类Type结合起来,即:不只是期望我的其他程序员使用switch语句手动进行转换,并确保添加/expansions

c# - 是否可以在枚举中保存类型(使用 "typeof()")?

所以我在XNA、C#4.0中创建一个游戏,我需要管理很多PowerUps(在代码中都是从类“PowerUp”继承的),并处理PowerUps的后端管理我当前有一个枚举PowerupEffectType,每个子类PowerUp都有一个值。最后,在代码中,我需要将PowerupEffectType转换为Powerup类型(属于Type类,通常使用typeof([classname])实现)。因为这是一个小组项目,我想尽可能地将PowerupEffectType的每个值与其对应的类Type结合起来,即:不只是期望我的其他程序员使用switch语句手动进行转换,并确保添加/expansions

c# - is 和 typeof 哪个更快

哪一段代码更快?if(objisClassA){}if(obj.GetType()==typeof(ClassA)){}编辑:我知道他们不做同样的事情。 最佳答案 如果他们不做同样的事情,哪个更快有关系吗?比较具有不同含义的语句的性能似乎不是一个好主意。is告诉您对象是否在其类型层次结构中的任何位置实现了ClassA。GetType()告诉您派生最多的类型。不是一回事。 关于c#-is和typeof哪个更快,我们在StackOverflow上找到一个类似的问题:

c# - is 和 typeof 哪个更快

哪一段代码更快?if(objisClassA){}if(obj.GetType()==typeof(ClassA)){}编辑:我知道他们不做同样的事情。 最佳答案 如果他们不做同样的事情,哪个更快有关系吗?比较具有不同含义的语句的性能似乎不是一个好主意。is告诉您对象是否在其类型层次结构中的任何位置实现了ClassA。GetType()告诉您派生最多的类型。不是一回事。 关于c#-is和typeof哪个更快,我们在StackOverflow上找到一个类似的问题:

C# 开关类型

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:C#-Isthereabetteralternativethanthisto'switchontype'?C#不支持对象类型的切换。模拟这个的最佳模式是什么:switch(typeof(MyObj))caseType1:caseType2:caseType3: