Действительно ли невозможно написать код на главной странице mvc? - PullRequest
0 голосов
/ 07 апреля 2009

Все, что я хочу сделать, это написать что-то вроде

<%=Html.ScriptInclude("~/Scripts/jquery.1.2.6.js")%>

Когда я это делаю, я получаю сообщение об ошибке:

Коллекция Controls не может быть изменен, потому что элемент управления содержит блоки кода (то есть <% ...%>)

Я использую кандидата ASP.NET MVC Release 1.

Разве это невозможно сделать?

Ответы [ 4 ]

2 голосов
/ 07 апреля 2009

Нет. Не возможно. Я делаю именно это. Фрагмент кода из недавнего проекта ниже. В чем проблема?

Обратите внимание, что StyleSheet и Javascript являются моими собственными методами расширения, также как и расширение DatedContent в UrlHelper. Чтобы ваши собственные методы расширения работали, вам нужно импортировать пространство имен, содержащее их, вверху вашей страницы.

<%@ Import Namespace="MvcExtensions" %>

<%= Html.StyleSheet( Url.DatedContent( "~/Content/styles/themes/jquery-ui-theme.css" ) )%> 
<%= Html.StyleSheet( Url.DatedContent( "~/Content/styles/Site.css" ), "all" ) %>
<%= Html.Javascript( Url.Content( "~/Scripts/jquery-1.3.2.min.js" ) ) %>
<%= Html.Javascript( Url.Content( "~/Scripts/ui/ui-all-1.7.1.min.js" ) ) %>
1 голос
/ 08 апреля 2009

Поместите свой код в тег <asp:PlaceHolder runat="server">. В RC1 была известная ошибка, вызвавшая эту проблему. Проверьте страницу 23 заметок о выпуске .

Я не обновился до 1.0, поэтому не знаю, было ли это исправлено или нет.

1 голос
/ 07 апреля 2009

Почему бы вам просто не сделать:

<script src="../../Script/jquery.1.2.6.js" type="text/javascript"></script>
0 голосов
/ 08 апреля 2009

Попробуйте изменить ...

<%= Html.ScriptInclude("~/Scripts/jquery.1.2.6.js")%>

... для ...

<%# Html.ScriptInclude("~/Scripts/jquery.1.2.6.js")%>

(Изменение = на # )

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