1

HI, Je me demandais si quelqu'un d'autre avait eu un problème avec les projets VS2010 MVC 2 ne pas être en mesure de créer automatiquement une vue fortement typée après avoir fait une cartographie fluide ? Lorsque vous essayez de faire le mappage VS2010 ne montre pas les entités dans la liste déroulante et même si je mets manuellement la classe dans ce doent construire automatiquement la vue.Impossible de créer une vue fortement typée dans VS2010 avec Fluent Nhibinate et MVC2

Vive Dan

Répondre

1

Il ressemble à VS2010 doent comme quelque chose à voir avec Nhibinate 3. liaison à v2 semble faire fonctionner au besoin même si re-lier retour à v3.

Très étrange

0

Avez-vous fait votre classe d'entité publique Propriétés?

Le moteur d'échafaudage utilise la réflexion .NET pour examiner les propriétés publiques exposées sur la classe passé, et ajouter le contenu approprié en fonction de chaque type il finds

Les œuvres suivantes pour moi:

namespace Entities 
{ 
    public class Page 
    { 
     public virtual int Id { get; private set; } 
     public virtual string Name { get; set; } 
     public virtual string Title { get; set; } 
     public virtual string Description { get; set; } 
    } 
} 



public class PageMap : ClassMap<Page> 
{ 
    public PageMap() 
    { 
     Table("Pages"); 
     Id(x => x.Id); 
     Map(x => x.Name); 
     Map(x => x.Keywords); 
     Map(x => x.Description); 

    } 
} 

fortement typées Vue: tic tac

Voir classe de données: Entities.Page

contenu Vue: Li st

Ce qui crée alors:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<Entities.Page>>" %> 

<table> 
    <tr> 
     <th></th> 
     <th> 
      Id 
     </th> 
     <th> 
      Name 
     </th> 
     <th> 
      Title 
     </th> 
     <th> 
      Description 
     </th> 
    </tr> 

<% foreach (var item in Model) { %> 

    <tr> 
     <td> 
      <%= Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) %> | 
      <%= Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ })%> | 
      <%= Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ })%> 
     </td> 
     <td> 
      <%= Html.Encode(item.Id) %> 
     </td> 
     <td> 
      <%= Html.Encode(item.Name) %> 
     </td> 
     <td> 
      <%= Html.Encode(item.Title) %> 
     </td> 
     <td> 
      <%= Html.Encode(item.Description) %> 
     </td> 
    </tr> 

<% } %> 

</table> 

<p> 
    <%= Html.ActionLink("Create New", "Create") %> 
</p> 
+0

acclamations - C'est un bug avec VS et NHab 3. Liaison à v2 lui permet de voir les classes. – Dreaddan

+0

@Dreaddan - J'utilise v2 bien sûr, content que vous l'ayez compris! –

Questions connexes