C#中通用类中的单独GUID

时间:2009-03-23 14:35:50

标签: c# generics

我创建了以下类:

[Guid("4469031d-23e0-483c-8566-ce978ccc9a6f")]
class MyGenericContianer<BasicType> : SomeOtherContainer
{
}

这会导致以下两个类具有相同的GUID:

MyGenericContianer<int> x;
MyGenericContianer<float> y;

我需要每种特定类型都拥有自己的GUID。你会怎么做?

1 个答案:

答案 0 :(得分:5)

您需要使用继承来执行此操作。

class MyGenericContianer<BasicType> : SomeOtherContainer { }

[Guid("4469031d-23e0-483c-8566-ce978ccc9a6f")]
class Container1: MyGenericContainer<X> { }

[Guid("5569031d-23e0-483c-8566-ce978ccc9a6f")]
class Container2: MyGenericContainer<Y> { }