我正在设置一个Net Core页面,该页面使用几个DbSets作为一组SQL表的钩子(每个表都有唯一的类名)。每个类都继承自我编写的通用类-实例化该类时,仅设置通用类内部的变量-派生类主要用于结构,以后将使用。请参见下面的示例代码:
public class GeneralSet
{
[Key]
public Guid Id {get; set;}
public string set { get; set; }
public string userID { get; set; }
}
public class SpecificSetOne : GeneralSet
{
public SpecificSetOne(string _set, string _userID) : base(_set, _userID)
{
}
public string otherVariableUsedLater {get; set;}
}
public class SpecificSetTwo : GeneralSet
{
public SpecificSetTwo(string _set, string _userID) : base(_set, _userID)
{
}
public string otherVariableUsedLaterWithDifferentName {get; set;}
}
我的DbContext设置如下:
public class SetDbContext : DbContext
{
public SetDbContext(DbContextOptions<SetDbContext> options) :
base(options)
{
}
public DbSet<SpecificSetOne> SetOneData { get; set; }
public DbSet<SpecificSetTwo> SetTwoData { get; set; }
}
我的控制器看到通过URL发送的字符串变量“ set”。
我目前正在编写一个存储库来控制表的CRUD功能。我试图将所有内容都包含在一个存储库中,并根据通过该URL传递的设置字符串,为特定的集合调用适当的CRUD功能。在C#中这可能吗?我一直在审查反思,但不确定我想要的是可行的还是可取的。
非常感谢您,希望这一点很清楚。