Publicado el Dejar un comentario

EntityType ‘…’ has no key defined. Define the key for this EntityType …MVC 4

Continuando con Visual Studio 2010 y MVC 4, al ejecutar la aplicación me arrojó varios errores de este tipo:

One or more validation errors were detected during model generation:

\tSystem.Data.Entity.Edm.EdmEntityType: : EntityType ‘UserProfile’ has no key defined. Define the key for this EntityType.
….

\tSystem.Data.Entity.Edm.EdmEntitySet: EntityType: EntitySet ‘UserProfiles’ is based on type ‘UserProfile’ that has no keys defined.

Al parecer el generador de entidades EF 4.x DbContest para C# aún tiene ciertas deficiencias.

Para corregir este error hay que editar las clases que se indican y agregar la anotación [Key] antes del campo de llave primaria así:

….
[Key]

public int UserId { get; set; }

Le pedirá que agregue el namespace

System.ComponentModel.DataAnnotations

Es todo…. ¡saludos!

 

 

Publicado el Dejar un comentario

The type ‘…’ was not mapped… MVC 4

Tengo Visual Studio 2010 e instalé el complemento de MVC 4. Generé mi aplicación MVC 4 y generé al ADO.NET EntityObject desde una conexión de base de datos. La tabla UserProfile fue cambiada agregando más campos personalizados.

Al ejecutar ka aplicación por default y tratar de ingresar a la sección login me arrojaba el siguiente error:

“The type ‘….Models.UserProfile’ was not mapped. Check that the type has not been explicitly excluded by using the Ignore method or NotMappedAttribute data annotation. Verify that the type was defined as a class, is not primitive, nested or generic, and does not inherit from EntityObject.”

Resulta que el MVC 4 no acepta clases entidades heredadas del tipo EntityObject. Para corregir este error hay varias formas, pero la más “fácil” es la de instalar el complemento “EF 4.x DbContext Generator for C#” que se puede descargar aquí.

Una vez instalado y reiniciado el VS 2010 procede a seguir las instrucciones indicadas en dicha página: se da click derecho sobre el editor modelo .edmx , se selecciona Add Code Generation Item… y en Installed Templates -> Visual C# -> Code, se selecciona EF 4.x DbContext Generator. Se le da un nombre al modelo y se pulsa el botón Add.

Manda un aviso de Security Warning, que puede ser ignorado pulsando “OK”. Y listo Crea un modelo de datos con la extensión .tt con clases por separado de las entidades de la base de datos.

Listo, el error antes descrito se fue.

¡Saludos!

 

 

Publicado el Dejar un comentario

Joomla!, el popular Sistema de Administración de Contenidos (CMS) lanza su versión 3.

Joomla! da un gran salto dentro del espacio móvil con un rediseño completo tanto de la interfaz pública como de la administrativa. Con la adopción del framework Bootstrap, Joomla! se ha convertido en el primer gran CMS en estar adaptado para dispositivos móviles en ambas zonas. Ahora, todo sitio web puede ofrecer a sus visitantes contenido adaptado a móviles, así como herramientas también adaptadas a las interfaces de estos dispositivos para los administradores.

Visita el sitio de Joomla! 3 para descargarlo y para obtener una información más completa de esta versión.