Невозможно создать строго типизированное представление в VS2010 с Fluent Nhibinate и MVC2 - PullRequest
1 голос
/ 25 сентября 2010

Привет, мне было интересно, была ли у кого-то еще проблема с проектами VS2010 MVC 2, не позволяющими автоматически создавать строго типизированное представление после выполнения беглого отображения?

При попытке выполнить сопоставление VS2010не отображает сущности в раскрывающемся списке, и даже если я вручную добавлю в него класс, автоматически создаю представление.

Приветствия, Дэн

Ответы [ 2 ]

1 голос
/ 29 сентября 2010

Похоже, что Vs2010 не имеет ничего общего с Nhibinate 3. Ссылка на v2, кажется, заставляет его работать должным образом, даже когда возвращается к v3.

Очень странно

0 голосов
/ 28 сентября 2010

Сделали ли вы свои свойства класса сущности общедоступными?

Механизм скаффолдинга использует отражение .NET для просмотра открытых свойств, представленных переданному ему классом, и будет добавлять соответствующий контент в зависимости от каждого его типа находит

У меня работает следующее:

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);

    }
}

Вид строго типизированный: отмечен галочкой

Класс данных представления: Entities.Page

Просмотр содержимого: Список

Который затем создает:

<%@ 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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...