При реализации интерфейса два члена будут объединены, так как у вас нет метода get в IFoo.Value.
interface IReadOnlyFoo
{
string Value { get; }
}
interface IFoo : IReadOnlyFoo
{
new string Value { set; }
}
class BasicFoo : IFoo
{
public string Value { get; set; }
}
Пока вы используете неявные реализации для интерфейсов, они будут вести себя так, как вы и предполагали. с другой стороны, если вы хотите иметь два разных поведения для членов интерфейса, то вы хотите использовать явные реализации. Вы можете найти пример здесь
https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/interfaces/how-to-explicitly-implement-members-of -Два-интерфейсы
Games.find(
:all, :limit => 5,
:include => [:games, :requests],
:group => 'games, whatever, whatever_else'
)
Я думаю, что Вы сможете сделать это использование find_by_sql и GROUP BY:
Games.find_by_sql("SELECT * FROM games GROUP BY user_id")