2008-10-17 6 views
12

Я просто в процессе модернизации моего предварительного просмотра 5 приложения к бета-1, и я почти там сохранить для этого одну ошибку при попытке вынести контроль:ASP.NET MVC Beta 1 - где Html.RenderPartial?

«System.Web.Mvc. HtmlHelper»не содержит определение для „RenderPartial“и никакого расширения метода„“RenderPartial принимающего в первого аргумент типа „System.Web.Mvc.HtmlHelper“может быть найдено (вы пропали без вести с помощью директивы или ссылка на сборку?)

Моя разметка (в .aspx View Content Page) является:

<% Html.RenderPartial("Controls/UserForm", ViewData); %> 

Я попытался с помощью Microsoft.Web.Mvc, но безрезультатно. Кто-нибудь знает, куда ушел Html.RenderPartial, или какую альтернативу я мог бы использовать?

+0

Они уверены, что любовь перемещение вещи вокруг :) – leppie 2008-10-17 09:17:04

+0

Да, я думаю, что они получают какое-то больное удовольствие от этого ... – tags2k 2008-10-17 09:19:37

ответ

9

А также не забудьте добавить пространство имен, как показано ниже на веб-конфигурации, я думаю, что просмотр 5 по умолчанию web.config не System.Web.Mvc.Html в нем:

<namespaces> 
<add namespace="System.Web.Mvc"/> 
<add namespace="System.Web.Mvc.Ajax"/> 
<add namespace="System.Web.Mvc.Html"/> 
<add namespace="System.Web.Routing"/> 
<add namespace="System.Linq"/> 
<add namespace="System.Collections.Generic"/> 
</namespaces> 
9

Теперь это исправлено - конфликт была разница в требованиях Web.config между Preview 5 и Beta 1. следующие потребности, которые будут добавлены в узел system.web компиляции сборок:

<add assembly="System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 

После этого изменения, все мои старые методы HtmlHelper волшебным образом вернулись!

2

В дополнение к добавлению ссылки сборки Я также должен был добавить линии

<add namespace="System.Web.Mvc.Html"/>" 

раздел страниц/пространств имен в файле web.config.