草庐IT

Reflection

全部标签

c# - 您如何获得在声明中实际输入的变量名称?

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:FindingtheVariableNamepassedtoaFunctioninC#下面的类包含字段城市。我需要动态确定在类声明中键入的字段名称即我需要从对象city的实例中获取字符串“city”。我试图通过在DoSomething()中检查它的类型来做到这一点,但在调试器中检查类型的内容时找不到它。这可能吗?publicclassPerson{publicstringcity="NewYork";publicPerson(){}publicvoidDoSomething(){Typet=city.GetTy

c# - 您如何获得在声明中实际输入的变量名称?

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:FindingtheVariableNamepassedtoaFunctioninC#下面的类包含字段城市。我需要动态确定在类声明中键入的字段名称即我需要从对象city的实例中获取字符串“city”。我试图通过在DoSomething()中检查它的类型来做到这一点,但在调试器中检查类型的内容时找不到它。这可能吗?publicclassPerson{publicstringcity="NewYork";publicPerson(){}publicvoidDoSomething(){Typet=city.GetTy

c# - 使用反射是一种设计味道吗?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我看到很多C#、.net问题在这里使用反射解决。对我来说,其中很多看起来像是以牺牲良好设计(OOP)为代价来违反规则。许多解决方案看起来难以维护且“脚本化”。使用反射通常是一种好的做法吗?有没有只有反射(reflection)才能解决的事情?编辑:请举例说明反射是唯一好的解决方案。

c# - 使用反射是一种设计味道吗?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我看到很多C#、.net问题在这里使用反射解决。对我来说,其中很多看起来像是以牺牲良好设计(OOP)为代价来违反规则。许多解决方案看起来难以维护且“脚本化”。使用反射通常是一种好的做法吗?有没有只有反射(reflection)才能解决的事情?编辑:请举例说明反射是唯一好的解决方案。

c# - 使用 lambda 表达式获取属性名称和类型

我正在尝试编写一个函数,使用如下语法提取属性名称和类型:privateclassSomeClass{PublicstringCol1;}PropertyMapperpropertyMapper=newPropertyMapper();propertyMapper.MapProperty(x=>x.Col1)有没有什么方法可以在不对语法进行任何重大更改的情况下将属性传递给函数?我想获取属性名称和属性类型。所以在下面的例子中我想检索Name="Col1"和Type="System.String"有人能帮忙吗? 最佳答案 这里有足够多的使

c# - 使用 lambda 表达式获取属性名称和类型

我正在尝试编写一个函数,使用如下语法提取属性名称和类型:privateclassSomeClass{PublicstringCol1;}PropertyMapperpropertyMapper=newPropertyMapper();propertyMapper.MapProperty(x=>x.Col1)有没有什么方法可以在不对语法进行任何重大更改的情况下将属性传递给函数?我想获取属性名称和属性类型。所以在下面的例子中我想检索Name="Col1"和Type="System.String"有人能帮忙吗? 最佳答案 这里有足够多的使

c# - 静态方法中的 GetType

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:.NET:Determinethetypeof“this”classinitsstaticmethod如何使GetType()可从static方法访问?我有这个抽象基类abstractclassMyBase{publicstaticvoidMyMethod(){varmyActualType=GetType();//thisisaninstancemethoddoSomethingWith(myActualType);}}以及该类的实现。(我可以有很多实现。)classMyImplementation:MyB

c# - 静态方法中的 GetType

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:.NET:Determinethetypeof“this”classinitsstaticmethod如何使GetType()可从static方法访问?我有这个抽象基类abstractclassMyBase{publicstaticvoidMyMethod(){varmyActualType=GetType();//thisisaninstancemethoddoSomethingWith(myActualType);}}以及该类的实现。(我可以有很多实现。)classMyImplementation:MyB

c# - 从类型的部分名称获取 System.Type

我想得到一个System.Type,只给string中的类型名称。例如,如果我有一个对象:MyClassabc=newMyClass();然后我可以说:System.Typetype=abc.GetType();但是如果我只有:stringclassName="MyClass"; 最佳答案 这取决于该类是哪个程序集。如果它在mscorlib中或调用程序集,您只需要Typetype=Type.GetType("namespace.class");但如果它是从其他程序集引用的,则需要执行以下操作:Assemblyassembly=typ

c# - 从类型的部分名称获取 System.Type

我想得到一个System.Type,只给string中的类型名称。例如,如果我有一个对象:MyClassabc=newMyClass();然后我可以说:System.Typetype=abc.GetType();但是如果我只有:stringclassName="MyClass"; 最佳答案 这取决于该类是哪个程序集。如果它在mscorlib中或调用程序集,您只需要Typetype=Type.GetType("namespace.class");但如果它是从其他程序集引用的,则需要执行以下操作:Assemblyassembly=typ