clave compuesta como clave externa

Estoy usando Entity Framework 4.1 en la aplicación MVC 3. Tengo una entidad donde tengo clave primaria consta de dos columnas (clave compuesta). Y esto se está utilizando en otra entidad como clave externa. ¿Cómo crear la relación? En scnerios normales usamos:

public class Category
{
    public string CategoryId { get; set; }
    public string Name { get; set; }

    public virtual ICollection<Product> Products { get; set; }
}

public class Product
{
    public int ProductId { get; set; }
    public string Name { get; set; }
    public string CategoryId { get; set; }

    public virtual Category Category { get; set; }
} 

pero ¿qué pasa si la categoría tiene dos columnas clave?

Respuestas a la pregunta(2)

Su respuesta a la pregunta