Вы называете параметр ForeignKey в атрибуте BelongsTo одинаковым для обеих клавиш.Этот параметр не является именем столбца, который вы хотите использовать, а фактически именем ограничения, которое ActiveRecord использует для именования его при создании схемы.
Я сделал некоторые предположения и расширил ваш пример кода с помощьюпример, который работает:
[ActiveRecord]
public class Flight
{
[PrimaryKey]
public int Id { get; set; }
[BelongsTo(Column = "Origin", ForeignKey = "country_id_origin")]
public Countries Origin { get; set; }
[BelongsTo(Column = "Destination", ForeignKey = "country_id_destination")]
public Countries Destination { get; set; }
}
[ActiveRecord]
public class Countries
{
[PrimaryKey]
public int country_id { get; set; }
[Property]
public string CountryName { get; set; }
}