Не удается отобразить представление в рамках TinyWeb - PullRequest
5 голосов
/ 12 ноября 2011

Я пытаюсь отобразить простое представление с помощью инфраструктуры TinyWeb и механизма представления Spark.

Среда - предварительный просмотр для разработчика Visual Studio 2011 & .net 4.5

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

Я получаю эту ошибку: имя 'Модель' не существует в текущем контексте.

Обработчик:

public class IndexHandler
{
    Route route = new Route("/");

    public IResult Get()
    {
        var model = new { message = "Hello World" };
        return View.Spark(model, "Views/base.spark");
    }
}

Просмотр:

<html>
  <head>
    <title>This is a test</title>
  </head>
  <body>
    <p>${Model.message}</p>
  </body>
</html>

Ответы [ 2 ]

5 голосов
/ 12 ноября 2011

Вы используете анонимный объект, который, насколько я знаю, не будет работать, вы можете использовать полный класс модели или динамический объект.

var model = new MyModel { message = "Hello World" };

А затем в виде <viewdata model="MyModel"> или

dynamic model = new { message = "Hello World" };

А затем укажите <viewdata model="dynamic"> в представлении.

4 голосов
/ 12 ноября 2011

Разве вам не нужно теперь зажигать, какая модель?

например.

<viewdata currentProduct="Product"/>

см. Здесь: http://invalidcast.com/2011/05/tinyweb-series-4-views-model-binding

...