Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Что за код C# в тегах <script>? / 25 сообщений из 35, страница 1 из 2
01.06.2012, 10:12
    #37820957
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
Вот тут прочитал http://www.functionx.com/aspnet/Lesson07.htm
Как эта тема называется, где почитать можно подробнее, что это такое, зачем это нужно и где применяется?

Это, случаем, не замена джава-скрипту? Параметр "выполнение на сервере" наводит на мысль, что код, передающийся на сервер, ещё и скомпилироваться там должен, так что ответ ждать даже дольше, чем от серверной части си-шарповского кода, который заранее уже скомпилирован. Я прав?
...
Рейтинг: 0 / 0
01.06.2012, 10:14
    #37820960
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
Ну и если это своеобразная замена, только выполняющаяся не на клиенте, а на сервере, то можно ли с помощью неё делать подобие асинхронных запросов и частичных обновлений страницы?

Не люблю джава-скрипт - люблю си-шарп.
...
Рейтинг: 0 / 0
01.06.2012, 10:35
    #37821003
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320Ну и если это своеобразная замена, только выполняющаяся не на клиенте, а на сервере, то можно ли с помощью неё делать подобие асинхронных запросов и частичных обновлений страницы?

Не люблю джава-скрипт - люблю си-шарп.
Это никакая не замена. Серверный код можно писать в файле cs и в файле aspx. Без разницы. Эта вся фигня (в любом случае) компилится один раз. К клиентскому коду, что на яваскрипте+хтмл, aspx страница не имеет никакого отношения до тех пор, пока она не обработается сервером, и сервер не превратит её в хтмл+яваскрипт.
По поводу "не люблю джава-скрипт", что здесь уж поделаешь. :) Если хотите заниматься вэбом, то особо выбора-то и нет.
...
Рейтинг: 0 / 0
01.06.2012, 11:08
    #37821075
OracleLover
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
ShSergeПо поводу "не люблю джава-скрипт", что здесь уж поделаешь. :) Если хотите заниматься вэбом, то особо выбора-то и нет.

Выбор всегда есть, просто его сайты для пользователя будут системы "унылый кирпич"
...
Рейтинг: 0 / 0
01.06.2012, 12:02
    #37821187
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
ShSergeuser7320Ну и если это своеобразная замена, только выполняющаяся не на клиенте, а на сервере, то можно ли с помощью неё делать подобие асинхронных запросов и частичных обновлений страницы?

Не люблю джава-скрипт - люблю си-шарп.
Это никакая не замена. Серверный код можно писать в файле cs и в файле aspx. Без разницы. Эта вся фигня (в любом случае) компилится один раз. К клиентскому коду, что на яваскрипте+хтмл, aspx страница не имеет никакого отношения до тех пор, пока она не обработается сервером, и сервер не превратит её в хтмл+яваскрипт.
По поводу "не люблю джава-скрипт", что здесь уж поделаешь. :) Если хотите заниматься вэбом, то особо выбора-то и нет.
Я не понял последовательности этих обработок. Вот есть, скажем, такая страница (Используя Razor для вызова функции):

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<html>
<head>

<script language="C#" type="text/C#" runat="server">
void Welcome()
{
    Response.Write("Welcome to our web site.");
}
</script>

</head>
<body>
@Welcome()
</body>
</html>



При первом запросе (например, гет) этой страницы пользователь получит код с нескомпилированным (т. е. в виде текста) скриптом на си-шарпе, так? А при втором запросе (посте) он получит уже вместо текста @Welcome() то значение, которое она возвращает?

Или сразу при первом же запросе этой страницы на сервере компилируется скрипт и вместо @Welcome() подставляется её возврат? При этом в результирующей странице всё равно остаётся текст крипта на си-шарпе?

Если второй вариант, то какой смысл таких скриптов? Особенно в контексте ASP.NET MVC - чтобы не создавать лишниюю модель для простого вызова простой функции?

Если последнее верно, то разве в MVC не предназначен для этого синтаксис Разора @helper: http://weblogs.asp.net/scottgu/archive/2011/05/12/asp-net-mvc-3-and-the-helper-syntax-within-razor.aspx ?

Или такие скрипты - это чисто для ASP.NET, а для MVC с разором такую же задачу решают хелперы через собачку?
...
Рейтинг: 0 / 0
01.06.2012, 12:06
    #37821204
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
OracleLoverShSergeПо поводу "не люблю джава-скрипт", что здесь уж поделаешь. :) Если хотите заниматься вэбом, то особо выбора-то и нет.

Выбор всегда есть, просто его сайты для пользователя будут системы "унылый кирпич"
Скажите это тем, у кого джава-скрипты отключены. Причину отключения обсуждать не будем.
...
Рейтинг: 0 / 0
01.06.2012, 12:09
    #37821211
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320,

Читайте азбуку. И нечего на професстональный форум всякую ерунду постить.
...
Рейтинг: 0 / 0
01.06.2012, 12:10
    #37821219
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320Скажите это тем, у кого джава-скрипты отключены. Причину отключения обсуждать не будем.
Аспнет не будет работать, если отключен яваскрипт.
...
Рейтинг: 0 / 0
01.06.2012, 12:52
    #37821351
SanSYS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
ShSergeuser7320Скажите это тем, у кого джава-скрипты отключены. Причину отключения обсуждать не будем.
Аспнет не будет работать, если отключен яваскрипт.
хм.. ну от вас не ожидал, честно говоря
Будет работать, аяксы - не будут и клиентские валидаторы, а page life cycle пройдет нормально и даже события обработаются на основе сабмитящихся данных, только что сам проверил :)
...
Рейтинг: 0 / 0
01.06.2012, 12:54
    #37821358
SanSYS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320user7320ShSergeпропущено...

Это никакая не замена. Серверный код можно писать в файле cs и в файле aspx. Без разницы. Эта вся фигня (в любом случае) компилится один раз. К клиентскому коду, что на яваскрипте+хтмл, aspx страница не имеет никакого отношения до тех пор, пока она не обработается сервером, и сервер не превратит её в хтмл+яваскрипт.
По поводу "не люблю джава-скрипт", что здесь уж поделаешь. :) Если хотите заниматься вэбом, то особо выбора-то и нет.

Я не понял последовательности этих обработок. Вот есть, скажем, такая страница (Используя Razor для вызова функции):

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<html>
<head>

<script language="C#" type="text/C#" runat="server">
void Welcome()
{
    Response.Write("Welcome to our web site.");
}
</script>

</head>
<body>
@Welcome()
</body>
</html>



При первом запросе (например, гет) этой страницы пользователь получит код с нескомпилированным (т. е. в виде текста) скриптом на си-шарпе, так? А при втором запросе (посте) он получит уже вместо текста @Welcome() то значение, которое она возвращает?

Или сразу при первом же запросе этой страницы на сервере компилируется скрипт и вместо @Welcome() подставляется её возврат? При этом в результирующей странице всё равно остаётся текст крипта на си-шарпе?

Если второй вариант, то какой смысл таких скриптов? Особенно в контексте ASP.NET MVC - чтобы не создавать лишниюю модель для простого вызова простой функции?

Если последнее верно, то разве в MVC не предназначен для этого синтаксис Разора @helper: http://weblogs.asp.net/scottgu/archive/2011/05/12/asp-net-mvc-3-and-the-helper-syntax-within-razor.aspx ?

Или такие скрипты - это чисто для ASP.NET, а для MVC с разором такую же задачу решают хелперы через собачку?последовательно обработается, почитайте где нить как работает Razor и asp.net в принципе, + основы C#
...
Рейтинг: 0 / 0
01.06.2012, 13:01
    #37821379
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
SanSYS,

__doPostBack не будет работать.
...
Рейтинг: 0 / 0
01.06.2012, 13:02
    #37821380
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
Не будет работать аякс. Ну и нафига такие сайты?
...
Рейтинг: 0 / 0
01.06.2012, 13:06
    #37821386
SanSYS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
ShSergeНе будет работать аякс. Ну и нафига такие сайты?
Ну.. иногда без аякса проще, к примеру - загрузка файла (конечно можно ифреймом или кучей готовых решений воспользоваться, но проще без них)
А в целом - согласен
...
Рейтинг: 0 / 0
01.06.2012, 13:08
    #37821390
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320,
Парсер разберет всю эту писанину и создаст cs или vb файл, который затем скомпилируется соответствующим компилятором в dll, которую и будет использовать веб сервер для обработки запроса.
...
Рейтинг: 0 / 0
01.06.2012, 13:14
    #37821399
SanSYS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
ShSergeSanSYS,

__doPostBack не будет работать.
Да и ладно, сабмит у формы кнопочкой можно же вызвать, для обработки заполеннных пользователем форм достаточно :)

Жаль что нет по умолчанию обработки отключенных куков (к примеру - передавать токены в урле, вроде такое поведение для ида сессии есть)
...
Рейтинг: 0 / 0
01.06.2012, 15:37
    #37821749
Gatman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
ShSergeЕсли хотите заниматься вэбом, то особо выбора-то и нет.+1
ShSergeНе будет работать аякс. Ну и нафига такие сайты?Сайты разные нужны, сайты разные важны (с)

user7320, Вы даже не представляете насколько тяжело поддерживать код, в котором намешана разметка, javascript и ещё и c# туда же впихнули. Это просто п... Я когда на такое нарываюсь, проклинаю автора всем что вспомню, особенно если код разбросан по всей странице, а не собран в одном месте. Оно Вам надо, карму портить?
Единственное зачем можно использовать сие новшество (примеры для студентов не берём, там главное - уместить всё на одной странице), так это если нужно менять код прям на сервере. Например, вывести какую-то отладочную инфу на странице, которой (инфы) на рабочем сервере нет. В остальных случаях отдельные cs наше всё.
...
Рейтинг: 0 / 0
01.06.2012, 16:11
    #37821793
Edd.Dragon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320Скажите это тем, у кого джава-скрипты отключены.
Зачем себя мучать?
Зачем разговаривать с теми, у кого js отключен? Зачем разговаривать с теми, кто как баран в IE6 уперся?
Вы для кого живете и работаете? Для себя или нет? =)
...
Рейтинг: 0 / 0
04.06.2012, 09:05
    #37823692
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
Edd.Dragonuser7320Скажите это тем, у кого джава-скрипты отключены.
Зачем себя мучать?
Зачем разговаривать с теми, у кого js отключен? Зачем разговаривать с теми, кто как баран в IE6 уперся?
Вы для кого живете и работаете? Для себя или нет? =)
В книжках по программированию пишут, что в первую очередь всё должно работать на обычном ХТМЛ, а потом уже по желанию пожно всякие джаваскрипты и асинхронные запросы добавить. А скрипты могут быть отключены (я так думаю) у всяких пользователей, сидящих за пятью фаерволлами во всяких больших конторах, у которых админы-параноики.

В принципе, рекомендации в книжках не лишены смысла - всё должно быть в первую очередь универсальным и работать везде, а потом уже быть специальным. Да и для лёгких страниц не так важно, будет она полностью обновляться или частично. А всякие красивости мне пока не нужны - максимум, это клиентская валидация у меня на скриптах пока. Я же не всякие вконтакте и ютубы делаю.

Хотя согласен, где-то без скриптов не обойтись. Но вообще я их не люблю, т. к. не знаю. Было бы хорошо, если бы все сайты были бы сделаны целиком на Сильверлайте и веб-программистам надо было бы только изучить си-шарп и замл. И тогда бы мир во всём мире настал бы.

GatmanShSergeЕсли хотите заниматься вэбом, то особо выбора-то и нет.+1
ShSergeНе будет работать аякс. Ну и нафига такие сайты?Сайты разные нужны, сайты разные важны (с)

user7320, Вы даже не представляете насколько тяжело поддерживать код, в котором намешана разметка, javascript и ещё и c# туда же впихнули. Это просто п... Я когда на такое нарываюсь, проклинаю автора всем что вспомню, особенно если код разбросан по всей странице, а не собран в одном месте. Оно Вам надо, карму портить?
Единственное зачем можно использовать сие новшество (примеры для студентов не берём, там главное - уместить всё на одной странице), так это если нужно менять код прям на сервере. Например, вывести какую-то отладочную инфу на странице, которой (инфы) на рабочем сервере нет. В остальных случаях отдельные cs наше всё.
Я так понял, вы про ASP.NET говорите? У меня же MVC. Я вот догадывался, что подобные скриптовые вставке на си-шарпе - это для АСП.НЕТ. Я так понимаю, что в MVC они бесполезны.

Или я не так понял?

И да, как вы разделите код ХТМЛ и серверный, если страница генерится на сервере, а не статичная? Вот, например, моя страница с подстановочными значениями (берутся из ресурсов), хотя ещё могут быть и циклы и прочее:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
<div id="Main">
    <h2>@Locals.Views.Account.Register.Strings.Header</h2>
    <p>
        @Locals.Views.Account.Register.Strings.UseTheFormBelowMessage
    </p>
    <p>
        @string.Format(
            Locals.Views.Account.Register.Strings.MinimumPasswordCharactersMessage, 
            Site2.Models.AccountModelsRestrictions.minimumPasswordLength, 
            Site2.Models.AccountModelsRestrictions.maximumPasswordLength)
    </p>

    <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>

    @using (Html.BeginForm()) 
    {
        @Html.AntiForgeryToken("register")
        @Html.ValidationSummary(true, Locals.Views.Account.Register.Strings.FormValidationSummaryMessage)
        <div>
            <fieldset>
                <legend>@Locals.Views.Account.Register.Strings.FormLegend</legend>

                <div class="editor-label">
                    @Html.LabelFor(m => m.UserName)
                </div>
                <div class="editor-field">
                    @Html.TextBoxFor(m => m.UserName)
                    @Html.ValidationMessageFor(m => m.UserName)
                </div>

                <div class="editor-label">
                    @Html.LabelFor(m => m.Email)
                </div>
                <div class="editor-field">
                    @Html.TextBoxFor(m => m.Email)
                    @Html.ValidationMessageFor(m => m.Email)
                </div>
 ...



Как вы сделаете серверную логику в отдельном коде? Хотя, тут серверная логика только при построении интерфейса, а собственно логика приложения - действительно в отдельном коде (модели и контроллеры).

А я встречал таких, которые утверждали, что весь интерфейс должен рисоваться скриптами на клиенте, а сервер должен только данные и скрипты эти передать клиенту. Как это должно выглядеть, я не знаю. И обоснования этому я не узнал - мода это такая, или какая-то практическая необходимость.
...
Рейтинг: 0 / 0
04.06.2012, 09:42
    #37823723
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320Как вы сделаете серверную логику в отдельном коде?
Например так .
...
Рейтинг: 0 / 0
04.06.2012, 09:52
    #37823730
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320,

Вы всё поняли не так. Говорим мы про аспнет, а мвц - эта штука, которая в него входит, точно так же, как вэбформс.
Вставьте куда-нибудь в свою страницу <% Response.Write("abc"); %> результат будет тот же, что и с тэгом script runat="server". Можно так, а можно эдак.
Короче, учиться и учиться. Только не читайте больше таких книжек, где пищут "всё должно работать на обычном ХТМЛ", или хотя бы посмотрите год издания.
...
Рейтинг: 0 / 0
04.06.2012, 10:27
    #37823772
SanSYS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320, RTFM, + сильвер должен умереть
...
Рейтинг: 0 / 0
04.06.2012, 11:45
    #37823919
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
SanSYSuser7320, RTFM, + сильвер должен умереть
Посмотрите, что пишет пользователь
skyANAuser7320Как вы сделаете серверную логику в отдельном коде?
Например так .

Он как бы предлагает для веба изучать: ХТМЛ, джава-скрипт, ЦСС, АСП.НЕТ (или ПХП - кому что), АСП.НЕТ МВЦ, Беллевю. А я предлагаю только си-шарп и замл. При том, что первый набор при всём своём огромном количестве предлагает средства и видимый результат куда беднее. Я уже не говорю, что трёхмерная графика там делается либо через сторонние библиотеки (что?! ещё что-то добавить к тому списку?!!), либо через задницу (трёхмерный движок на джава-скриптах? - ну, вроде бы, есть такое, правда, нигде почти не используется - настолько это нужно и производительно). Чувствуете разницу?

Почему вы не хотите признать, что всё то нагромождение языков, технологий и прочего, что есть в веб-программировании, уже давно устарело и обросло бесполезной и вредной монструозностью?
...
Рейтинг: 0 / 0
04.06.2012, 11:50
    #37823930
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320Почему вы не хотите признать, что всё то нагромождение языков, технологий и прочего, что есть в веб-программировании, уже давно устарело и обросло бесполезной и вредной монструозностью?
Именно поэтому авторы книжек советуют всё делать сперва на ХТМЛ, а всякие библиотеки сторонние добавлять уже по мере необходимости. Ибо разобраться со всеми веб-форматами и их совместимостью, да ещё чтобы всё это везде заработало (а не так, что "только в будущей преальфа тестовой версии нашего браузера"), надо столько времени потратить и помучиться... Это как разработчики игровых движков под С++, которые бОльшую часть времени занимаются тем, что изобретают сборщик мусора.
...
Рейтинг: 0 / 0
04.06.2012, 12:31
    #37824006
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320,

В каком месте посмеяться? Наверное, можно в любом. Если авторы советуют что-то делать сначала на хтмл - они правы.
Не правы Вы, когда перевираете всё. Кстати, Вы насчёт каких-то библиотек переврали - совершенно однозначно. Вы же сами сказали, что используете майкрософт-мвц, так ведь?
Насчёт много времени помучиться - не совсем верно. Скорее не "мучиться", а "учиться".
...
Рейтинг: 0 / 0
04.06.2012, 17:14
    #37824686
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что за код C# в тегах <script>?
user7320, Вы хоть поняли куда ссылку я дал? :)
Вы используете Razor и вопрошаете "Как вы сделаете серверную логику в отдельном коде?". Я намекаю на то, что можно использовать другой движок представления (View Engine) и даю на него ссылку. То есть предлагаю воспользоваться одной из возможностей (выбор движка представления) фреймворка ASP.NET MVC.

Если бы Вы писали на Сильверлайт, то никаких сторонних разработок бы не юзали для него? Сомневаюсь :)
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Что за код C# в тегах <script>? / 25 сообщений из 35, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]