寻找在C#中的设计模式强类型列表

我模拟的强类型的数据库关键字的列表。 有些人会是整数,一些字符串,有些的GUID等。

编辑它们是强类型在这个意义上,一些键将包含整数值,某些字符串,一些的UID等

所以,如果我的课堂的重点是“关键”和我的名单是List<Key>我在寻找如何实施强类型方面。 我不希望使用仿制药,因为我不认为它适合在这里(证明我错了,虽然)。

我想制作“钥匙”和抽象类,使每个子类中实现强类型方面。 但是,这将是凌乱的为好。 (见下文)

没有人有任何更好的想法?

public abstract class RowKey { public string DbName { get; set; } public abstract object GetTypedValue(); } public class IntegerRowKey: RowKey { public override object GetTypedValue() { return 1; } }

--------------解决方案-------------

你为什么认为泛型是不恰当的位置? 他们几乎发明了这样的情景:

public class RowKey<T>
{
public string DbName { get; set; }
public T GetValue():
}
// Now use RowKey<int>, RowKey<string>, RowKey<Guid>, etc.

有返回的抽象基类object样的破坏被强类型的整体思路,不是吗?

编辑:啊,我看你在说什么。 看看这个问题。

分类:C# 时间:2015-03-15 人气:0
本文关键词: C#设计模式
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.284 (s). 10 q(s)