我还是C#,ServiceStack和Ormlite的新手,所以请温柔地对待我。
假设我想创建具有相同属性的多个表。我将使用名为IParentTable
的接口类继承所有这些表:
public interface IParentTable
{
int Id { get; set; }
string OldValue { get; set; }
string NewValue { get; set; }
string DoneBy { get; set; }
DateTimeOffset DoneOn { get; set; }
}
继承它并创建一个具体的类没有问题:
public someclass : IParentTable
因此使用干净光滑的SS Ormlite API在数据库中创建一个表:
db.CreateTable<someclass>
现在的问题是,我想在运行中创建许多这些表。由于一些限制,唯一的资源&#34;我有一个字符串tableName
。那么我有什么方法可以使用db.CreateTable
创建一个表,它将创建一个名为tableName
的表,同时具有IParentTable
中的所有字段?
我也研究了Alias
属性,但这不实用,因为我没有编写具体的类。所以合并的问题将是:
给定一个字符串tableName
,我能够构建一个继承IParentTable
的类(其类名为tableName
,可能吗?),以便该类可以用作参数在db.CreateTable<>
的squarebrackets?
我尝试使用泛型来解决这个问题,但无济于事。有什么想法吗?