Мне кажется, проблема в том, что Language.Code не является первичным ключом класса Language.В вашей модели допускается использование разных языков с одним и тем же Language.Code.
Другое дело.С точки зрения бизнеса гораздо лучше иметь разные статьи в зависимости от культуры пользователя, а не от языка.Потому что язык не уникален для отдельной культуры, и все деловые вещи, такие как CurrencyFormat, DateFormat, Taxes и, конечно, Закон, специфичны для культуры.