Проблема со строго типизированными представлениями - PullRequest
0 голосов
/ 13 октября 2009

Возникли некоторые проблемы со строго типизированными представлениями в ASP.Net MVC ...

Мастер-страница:

<div id="footer-container">
    <div id="actual-footer">
        <% Html.RenderAction("GetFooter", "Footer"); %>
    </div>    
</div>

Это я думаю, должен вызвать действие GetFooter для класса FooterController?

Модель (/models/PageFooter.cs):

namespace Web.Models
{
    public class PageFooter
    {


        public PageFooter()
        {
            Title = DateTime.Now.ToString();
        }


        public string Title { get; set; }

    }
}

Это моя модель, которая просто в процессе строительства наполняет заголовок datetime.now.

Контроллер (/Controlers/FooterController.cs):

namespace Web.Controllers
{
    public class FooterController : Controller
    {

        public ActionResult GetFooter()
        {
            return View(new Web.Models.PageFooter());
        }

    }
}

А теперь сам фактический вид ...

Просмотр (/Views/Footer/Footer.aspx):

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<Web.Models.PageFooter>" %>

<% Html.Label(Model.Title); %>

Проблема в том, что он просто не распознает Model.Title, который, как я считаю, является преобразованием.

Есть идеи?

1 Ответ

1 голос
/ 15 октября 2009

Хорошо, я нашел проблему.

Я начал проект с использованием MVC Dll из MVC 1.0.0.0. Затем я обновил проект, установив фьючерсы MVC и ссылаясь на эти DLL в моем файле web.config. Однако я не обновлял файл web.config в моей папке Views, и он по-прежнему содержал ссылки на версии 1.0.0.0 DLL. Теперь работает нормально.

Итак, если вы включили фьючерсы MVC и удивляетесь, почему не можете получить строго типизированные представления, проверьте все ссылки во всех файлах web.config.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...