C# 转换的类包含$

C# 转换的类包含$,c#,ikvm,C#,Ikvm,我有一些jar文件,我使用IKVM工具将其转换为.dll。 我的问题是转换的类包含“$” 当我尝试创建该类的实例时,我的代码由于“$”而无效 这可以解决吗?dynamic obj=Activator.CreateInstance(Type.GetType(“Really$WeirdTypeName”)),但您必须在没有编译时检查的情况下生存,并且在动态环境中生存。最好反编译代码以重命名类型…看看是否有帮助。我如何使用dynamic访问类成员和方法?如果不需要的字符正好在类型名称中,那么您可以

我有一些jar文件,我使用IKVM工具将其转换为.dll。
我的问题是转换的类包含“$”

当我尝试创建该类的实例时,我的代码由于“$”而无效


这可以解决吗?

dynamic obj=Activator.CreateInstance(Type.GetType(“Really$WeirdTypeName”)),但您必须在没有编译时检查的情况下生存,并且在动态环境中生存。最好反编译代码以重命名类型…看看是否有帮助。我如何使用dynamic访问类成员和方法?如果不需要的字符正好在类型名称中,那么您可以像往常一样访问成员,只是使用IntelliSense无法看到它们,例如:obj.dothisandth();但是请注意,使用它们的次数越多,可能会遇到更多的麻烦(如果需要使用奇怪的枚举怎么办?)解决根本原因的方法就更好了…使用标识符中不允许的字符(如
$
)对于工具生成的类来说,这是一种常见的方法,这些类最初不应该由用户代码实例化。虽然Java确实允许美元登录标识符,但代码本身不太可能包含具有如此笨拙名称的类,甚至不太可能要求您使用它,因此请首先检查您是否有错误。dynamic obj=Activator.CreateInstance(Type.GetType(“真的$WeirdTypeName”))但是,您必须在没有编译时检查的情况下生活,并且必须在动态环境中生活。最好反编译代码以重命名类型…看看是否有帮助。我如何使用dynamic访问类成员和方法?如果不需要的字符正好在类型名称中,那么您可以像往常一样访问成员,只是使用IntelliSense无法看到它们,例如:obj.dothisandth();但是请注意,使用它们的次数越多,可能会遇到更多的麻烦(如果需要使用奇怪的枚举怎么办?)解决根本原因的方法就更好了…使用标识符中不允许的字符(如
$
)对于工具生成的类来说,这是一种常见的方法,这些类最初不应该由用户代码实例化。虽然Java确实允许美元登录标识符,但代码本身不太可能包含具有如此笨拙名称的类,甚至不太可能要求您使用它,因此首先检查您是否做错了什么。