1

我有一个对象调用 Country 和另一个调用 CounytryRegions 如下所示

[TableName("Countries"),
PrimaryKey("Code", autoIncrement = false)]
public class Country
{
    public Country()
    {
        this.CountryRegions = new List<CountryRegion>();
    }

    public string Code { get; set; }
    public string Name { get; set; }

    [Foliaco.DataAccess.ResultColumn()]
    public List<CountryRegion> CountryRegions { get; set; }

}

[TableName("CountryRegions"),
PrimaryKey("Code", autoIncrement = false)]
public class CountryRegion 
{
    public CountryRegion()
    {
        this.Country = new Country();
    }

    public string Code { get; set; }
    public string Name { get; set; }

    public string CountryCode { get; set; }

    [Foliaco.DataAccess.ResultColumn()]
    public Country Country { get; set; }

}

如果我执行下面的 sql

 Country country = this.DB.Fetch<Country,CountryRegion>("select * from dbo.countries c join dbo.countryregions cr on c.Code = cr.CountryCode where c.Code = @0","US").FirstOrDefault();

我期望在 Country 类的 CountryRegions 属性上获得该国家/地区的所有相关记录,但我得到了以下错误

无法自动加入 CountryRegion

谢谢您的帮助

4

2 回答 2

2

我想我根据他们的文档发现了问题我需要创建一个 Realtor 类来加载列表,请参阅Petapoco 文档中的一对多部分,我还发现了这个帮助类OneTOMany,它使 Realtor 类更通用

于 2012-11-07T14:10:11.613 回答
1

我刚刚使用基于 PetaPoco 的 NPoco 库遇到了这个错误。

我的问题是我打电话.Fetch而不是.FetchOneToMany.

于 2017-02-27T02:11:09.573 回答