我一直在探索在C#中使用数据存储库,因为我正在为我的第一个"大"应用很长一段时间(我的第一次使用C#)。 特别是我使用了来自http://web.archive.org/web/20150404154203/https://www.remondo.net/repository-pattern-example-csharp/的一些信息以及MSDN和stackoverflow。
我似乎已经陷入了一些我认为可能非常简单的事情,但我已经尝试过谷歌搜索等等,要么它比我想象的要复杂,要么我使用错误的术语。
基本上,当我将IEntity界面定义为:
namespace Test.Database
{
public interface IEntity
{
int KeyValue { get; set; }
}
}
这对大多数事情都很有用,但是这个项目使用的是现有的,讨厌的数据库(因此我试图尽可能地从我的业务逻辑和其他开发人员的未来业务逻辑中抽象出来。 DB)其中并非所有键都是整数。有键是字符,整数,双精度等。 有没有办法让我可以创建界面的关键属性,类型无关?或者我是以错误的方式看待这一切?
答案 0 :(得分:2)
您可以根据自己的情况使用Generics强力输入。例,
namespace Test.Database
{
public interface IEntity<T>
{
T KeyValue { get; set; }
}
}