如何使用PetaPoco显式包含映射表

时间:2011-09-12 09:59:09

标签: petapoco

我想在一张有大约600张桌子的桌子上使用PetaPoco,但我只想映射一些桌子。

有没有办法明确说明我想要映射的表? t4模板中的配置(tables["tablename"].Ignore = true)并没有真正扩展到这种方法吗?

3 个答案:

答案 0 :(得分:4)

我最终这样做了:

Tables tables = LoadTables();

 foreach(Table t in tables)
    {
        if(!t.Name.Contains("all_user_group"))
        {
            t.Ignore = true;   
        }
    }

答案 1 :(得分:2)

我做过类似的事情

var tablesToLoad= new string[] {
 "TableOne",
 "TableTwo",
 "ViewOne", 
 "Etc"    }; 

var tables = LoadTables();

foreach(var t in tables)
{
  if(!tablesToLoad.Contains(t.Name))
  {
    t.Ignore = true;
  }
}

答案 2 :(得分:1)

为了避免让T4模板填充忽略赋值,我创建了一个只能访问我需要的表的新数据库用户。

然后我将T4模板与数据库用户连接起来,而PetaPoco只看到了我需要的表格。