使用String表达式的ServiceStack Ormlite CreateTable继承接口

时间:2014-09-05 03:32:13

标签: c# servicestack ormlite-servicestack

我还是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?

我尝试使用泛型来解决这个问题,但无济于事。有什么想法吗?

0 个答案:

没有答案