FullName универсального типа без информации о блоке?

У меня есть таблица базы данных, где я храню высоту, ширину, состояние, и так далее, окон. Как идентификатор для окон я использую полное имя типа формы. Это работает хорошо, но я обнаружил, что некоторые формы, которые универсальны, получают имена, которые невероятно длинны. Причина состоит в том, что универсальный тип перечислен с полной информацией о блоке. Существует ли способ пропустить это?

Например, полное имя регулярной формы было бы похоже на это:

Some.Name.Space.NameOfForm

Но полное имя универсальной формы похоже на это:

Some.Name.Space.NameOfForm`1[[Some.Other.Name.Space.GenericType, AssemblyName, Version=1.0.2.0, Cuntulre=neutral, PublicKeyToken=null]]

Почему это становится таким длинным? Существует ли способ, которым я могу получить более короткую версию? Например, что-то как:

Some.Name.Space.NameOfForm`1[[Some.Other.Name.Space.GenericType]]

Какие-либо подсказки?

11
задан svick 15 September 2015 в 16:07
поделиться

1 ответ

Я думаю, тип, используемый для обзорный класс, зависит от конкретной сборки (как и большинство классов .NET), поэтому я не думаю, что вы получите что-нибудь еще, не создавая эту строку вручную отражением или синпинкой.

OTOH Я не думаю, что используя названия типов, как ключи хорошая идея, возможно, вы должны подумать о том, чтобы получить другой ключ (но я не знаю требований, поэтому я не могу рекомендовать что-то другое)

2
ответ дан 3 December 2019 в 07:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: