Orchard Custom Module - Modelo sendo escolhido pelo NHibernate - Exigindo propriedades virtuais

Estou trabalhando na construção de um módulo personalizado no Orchard CMS e tenho a seguinte Ação do Controlador:

public ActionResult Inventory()
{
   var models = _repository.Get<MyModel>();
   return View(new MyViewModel() { MyModels = models.ToList() });
}

Agora, quando o Orchard cria isso, ocorre uma exceção, porque o NHibernate pegou o MyModel porque está sendo visto como um PartRecord, o que eu não quero que sej

A exceção é o método get_Id deve ser 'virtual / público protegido' ou 'virtual interno protegido'

Eu posso adicionar virtual às propriedades, mas quero evitar que o NHibernate faça parte da observação desse objeto, pois é desnecessári

Minha pergunta é: como posso adicionar um modelo, acessar esse modelo em uma exibição e impedir que Orchard o trate como um PartRecord? Na verdade, eu uso o modelo em um repositório separado, separado do Orchard D

EDIT: informações adicionais

_repository é um IDbRepository, apontando para minha própria instância de banco de dados MyModel é um POCO para meus dados. Estou tentando evitar colocar virtual nas propriedades do MyModel, tenho aqui, para ilustrar onde estou tentando evitá-las.

public interface IDbRepository : IDependency
{
    T Find<T>(long id) where T : class, IActiveRecord;
    bool Update<T>(T record) where T : class, IActiveRecord;
    bool Remove<T>(T record) where T : class, IActiveRecord;
}

public class MyModel : IActiveRecord
{
    [Key]
    public virtual long Id { get; set; }
    public virtual int SupplierProductId { get; set; }
    public virtual int SupplierId { get; set; }
    public virtual int ProductId { get; set; }
}

Além disso, meu módulo possui uma parte de configurações que eu criei, que é armazenada no Orchard DB e é editada nas configurações do site. Estou usando um manipulador para controlar isso. No entanto, tentei remover o manipulador e algumas outras coisas para impedir que o Orchard levasse meu objeto para o NHibernat