没有汇编信息的泛型类型的FullName?

Svi*_*ish 11 c# types tostring

我有一个数据库表,我存储窗口的高度,宽度,状态等.作为窗口的标识符,我使用表单的完整类型名称.它运作良好,但我发现一些通用的表单会获得非常长的名称.原因是泛型类型列出了完整的汇编信息.有没有办法跳过它?

例如,常规表单的全名如下所示:

Some.Name.Space.NameOfForm
Run Code Online (Sandbox Code Playgroud)

但是通用表单的全名如下所示:

Some.Name.Space.NameOfForm`1[[Some.Other.Name.Space.GenericType, AssemblyName, Version=1.0.2.0, Cuntulre=neutral, PublicKeyToken=null]]
Run Code Online (Sandbox Code Playgroud)

为什么这么久?有没有办法可以获得更短的版本?例如:

Some.Name.Space.NameOfForm`1[[Some.Other.Name.Space.GenericType]]
Run Code Online (Sandbox Code Playgroud)

有线索吗?

b8a*_*son 15

我同意dbemerlin的说法,你的最终目标似乎很奇怪,但我只是想指出这一点

GetType().ToString();
Run Code Online (Sandbox Code Playgroud)

似乎返回了较短版本的typename(没有泛型参数的汇编信息).

我想这对于类型名称的更易读的版本来说可能很方便.

  • 这应该是答案.谢谢. (4认同)