Entity Framework / SQL2008 - Como atualizar automaticamente os campos LastModified para entidades?

Se eu tiver a seguinte entidade:

public class PocoWithDates
{
   public string PocoName { get; set; }
   public DateTime CreatedOn { get; set; }
   public DateTime LastModified { get; set; }
}

Que corresponde a uma tabela do SQL Server 2008 com o mesmo nome / atributos ...

Como possoautomaticamente:

Defina o campo CreatedOn / LastModified para o registro comoagora (ao fazer INSERT)Defina o campo LastModified para o registro comoagora (ao fazer UPDATE)

Quando eu digoautomaticamente, quero dizer, quero poder fazer isso:

poco.Name = "Changing the name";
repository.Save(); 

Isso não:

poco.Name = "Changing the name";
poco.LastModified = DateTime.Now;
repository.Save();

Nos bastidores, "algo" deve atualizar automaticamente os campos de data e hora. O que é isso "alguma coisa"?

Estou usando o Entity Framework 4.0 - existe uma maneira de a EF fazer isso automaticamente por mim? (uma configuração especial no EDMX, talvez?)

Do lado do SQL Server, eu posso usarValor padrão, mas isso só funcionará paraINSERIR (não ATUALIZAÇÕES).

Da mesma forma, eu posso definir um valor padrão usando um construtor no POCO, mas, novamente, isso só funcionará ao instanciar o objeto.

E é claro que eupoderia use gatilhos, mas não é o ideal.

Como estou usando o Entity Framework, posso conectar-me aoSalvando alterações evento e atualize os campos de data aqui, mas o problema é que preciso ficar "ciente" dos POCOs (no momento, meu repositório é implementado com genéricos). Eu precisaria fazer algum tipo de truque de OO (como fazer meu POCO implementar uma interface e chamar um método nisso). Não sou contra isso, mas se eu tiver que fazer isso, prefiro definir manualmente os campos.

Basicamente, estou procurando uma solução do SQL Server 2008 ou do Entity Framework 4.0. (ou uma maneira inteligente do .NET)

Alguma ideia?

EDITAR

Obrigado a @marc_s por sua resposta, mas eu fui com uma solução que é melhor para o meu cenário.

questionAnswers(7)

yourAnswerToTheQuestion