использование динамического как тип MVC строго типизированного представления - PullRequest
0 голосов
/ 17 мая 2010

У меня есть страница для создания динамических сущностей.

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

У меня есть два действия:

public ActionResult Create()
  {
      dynamic model = ...
      return View(model);
  }

[HttpPost]
public ActionResult Create(dynamic(1) entity)
  {
     ...      
  }

Ну, проблема в том, что сущность пуста со страницы. Если я изменяю динамический в (1) для реального типа, он работает нормально.

1 Ответ

0 голосов
/ 18 мая 2010

Я не на 100% в этом, но я думаю, что проблема в том, что механизм связывания модели по умолчанию не имеет представления о том, что делать с «динамическим» типом, поскольку у него нет определенных свойств для отражения. Вам нужно было бы написать свой собственный механизм связывания, который бы использовал взамен вводимые имена форм, что опасно / ненадежно, потому что форма может быть изменена на стороне клиента.

Я изучал динамически типизированные ViewPages ранее (здесь, на самом деле, SO: Динамически типизированный ViewPage ), и я пришел к выводу, что он действительно ничего не дает в большинстве ситуаций. По крайней мере, пока (MVC 3+ может быть другой историей).

А вот несколько замечаний Фила Хаака по этому вопросу: http://haacked.com/archive/2009/08/26/method-missing-csharp-4.aspx

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