powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MVC vs WebForms
25 сообщений из 180, страница 4 из 8
MVC vs WebForms
    #37744243
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Random_GoodmanЯ к сожалению, не особо спец в MS MVC. Я видело формс (и работаю с формс, все старые проекты на нем) и видел MVC как это в Ruby . Я себе просто не представляю как хотя бы примерно такое сделать с сишарпом. И учитывая то, что я мельком видел на MS MVC - никто не представляет.

и что такого вы видели, что вас отвернуло от MVC?
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37744246
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuhи что такого вы видели, что вас отвернуло от MVC?
Ответ дальше :)

Random_Goodmanчто я мельком видел на MS MVC - никто не представляет
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37744334
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Random_GoodmanВсе, что снаружи переписывать и все что новое - вытеснит RoR. Причем он уже устарел и лет через 5 его заменит Google Go.Node.JS похоронит эти поделки.
tsyselsky dart развлечение, не более того.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37744350
Фотография iConst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бессмысленный безрезультатный холивар. Винни - провокатор. Он заранее знал эффект.

Идет сравнение фиолетового с перпендикулярным....


Самим-то не надоело?
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37744388
Random_Goodman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WinnipuhRandom_GoodmanЯ к сожалению, не особо спец в MS MVC. Я видело формс (и работаю с формс, все старые проекты на нем) и видел MVC как это в Ruby . Я себе просто не представляю как хотя бы примерно такое сделать с сишарпом. И учитывая то, что я мельком видел на MS MVC - никто не представляет.

и что такого вы видели, что вас отвернуло от MVC?
Даже не знаю с чего начать. Нечитабелен? Да. Громоздок? Да. Невозможно отдать верстаку на доверстку? Да.

Да вы просто возьмите и сделлайте обычную свертанную страничку регистрации на MVC (с валидаторами и прочим), а потом посмотрите как то же самое делается в RoR.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37744702
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Random_Goodman,

Не смешите людей со своим рубином на рельсах. Вернее, не забивайте голову.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37745786
Random_Goodman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да кто мешает, воюйте с сишарпом в MS MVC. Этож ваши проблемы, в конце концов.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746109
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Random_GoodmanWinnipuhпропущено...


и что такого вы видели, что вас отвернуло от MVC?
Даже не знаю с чего начать. Нечитабелен? Да. Громоздок? Да. Невозможно отдать верстаку на доверстку? Да.

Да вы просто возьмите и сделлайте обычную свертанную страничку регистрации на MVC (с валидаторами и прочим), а потом посмотрите как то же самое делается в RoR.

Если везде понатыканы html-хелперы (про формы вообще молчу, там всё ещё хуже), то с вёрсткой сложно. Но кто вас заставляет их использовать? Зачем к примеру использовать стандартные валидаторы, возвращающие кучу html-кода и прочее, когда можно просто написать свой? Страница будет точно такая же, как и в php и в java и т.д., получаем от верстальщика новый шаблон, натягиваем не меняя на старый серверный код и всё. Не вижу ничего нечитабельного и громоздкого в C# в целом и в asp.net mvc в частности.

Формы - сайты внутри компании (дизайн раз в 10 лет меняется, нагрузки нет, их поддерживать не надо), MVC - для вэба (дизайн и функционал меняется ежедневно).

RoR как был в шопе, так там и остаётся. PHP рулит (почти все web-студии на нём, а это большой прирост сайтов) и вряд ли что-то изменится в ближайшее время.

p.s. верните МСУ
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746140
Фотография tsyselsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может кому сгодится кусок кода на JS, клиент для "F# чятика" по мотивам Фленагана.
Валидацию и прочий кошерные код не писал. Просто F#/JS-snippet

JS snippet
Код: c#
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.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="SimpleWeb._Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
    <script type="text/javascript">
        //
        var http = {};        
        http._factories = [
            function() { return new XMLHttpRequest(); },
            function() { return new ActiveXObject("Msxml2.XMLHTTP"); },
            function() { return new ActiveXObject("Microsoft.XMLHTTP"); }
        ];
        http._factory = null;
        http.newRequest = function () {
            if (http._factory != null) return http._factory();
            for (var i = 0; i < http._factories.length ; i++) {
                try {
                    var factory = http._factories[i];
                    var request = factory();
                    if (request != null) {
                        http._factory = factory;
                        return request;
                    }
                }
                catch (e) {
                    continue;
                }
            }
            http._factory = function () {
                throw new Error("Ky");
            };
            http._factory();
        };
        //
        var Handler = {};
        if (document.addEventListener) {
            Handler.add = function (element, eventType, handler) {
                element.addEventListener(eventType, handler, false);
            };

            Handler.remove = function (element, eventType, handler) { 
                element.removeEventListener(eventType, handler, false);
            };
        }
        else if(document.attachEvent)
        {
            Handler.add = function (element, eventType, handler) {
                if (Handler._find(element, eventType, handler) != -1) return;
                var wrappedHandler = function (e) {
                    if (!e) e = window.event;
                    var event = {
                        _event: e,
                        type: e.type,
                        target: e.srcElement,
                        currentTarget: element,
                        relatedTarget: e.fromElement ? e.fromElement : e.toElement,
                        eventPhase: (e.srcElemen == element) ? 2 : 3,
                        clientX: e.clientX,
                        clientY: e.clientY,
                        altKey: e.altKey,
                        shiftKey: e.shiftKey,
                        keyCode: e.keyCode,
                        stopPropogation: function () { this._event.canselBubble = true; },
                        preventPropogation: function () { this._event.returnValue = false; }
                    };
                };
                if (Function.prototype.call)
                    handler.call(element, eventType);
                else {
                    element._currentHandler = handler;
                    element._currentHandler(eventType);
                    element._currentHandler = null;
                }
            };
            var h = {
                element: element,
                eventType: eventType,
                handler: Handler,
                wrappedHandler: wrappedHandler
            };
            var d = element.document || element;
            var w = d.parentWindow;
            var id = Handler._uid();
            if (!w._allHandlers) w._allHandlers = {};
            w._allHandlers[id] = h;
            if (!element._handlers) element._handlers = [];
            element._handler.push(id);
            if (!w._onunloadHandlerRegistered) {
                w._onunloadHandlerRegistered = true;
                w.attachEvent("onunload", Handler._removeAllHandlers);
            }
        };
        //
        Handler.remove = function (element, eventType, handler) {
            var i = handler._find(element, eventType, handler);
            if (i == -1) return;
            var d = element.document || element;
            var w = d.parentWindow;
            var handlerId = element._handlers[i];
            var h = w._allHandlers[handlerId];
            element._handlers.splice(i, 1);
            delete w._allHandlers[handlerId];
        };
        Handler._find = function (element, eventType, handler) {
            var handlers = element._handlers;
            if (!handlers) return -1;
            var d = element.document || element;
            var w = d.parentWindow;
            for (var i = handlers.lendth - 1; i >= 0; i--) {
                var handlerId = handlers[i];
                var h = w._allHandlers[handlerId];
                if (h.eventType == eventType && h.handler == handler)
                    return i;
            }
            return -1;
        };
        Handler._removeAllHandlers = function () {
            var w = this;
            for (id in w._allHandlers) {
                var h = w._allHandlers[id];
                h.element.detachEvent("on" + h.eventType, h.wrappedHandler);
                delete w._allHandlers[id];
            }
        };
        Handler._counter = 0;
        Handler._uid = function () { return "h" + Handler._counter++; };
        //
        window.onload = function () {
            var postHandler = function () {
                var request = http.newRequest();
                request.onreadystatechange = function () {                    
                    if (request.readyState == 4) {
                        if (request.status == 200) {
                            var chatRoom = document.getElementById('chatRoom');
                            chatRoom.innerHTML = request.responseText;
                            document.getElementById('post').value = "";
                        }
                    }
                };
                var post = document.getElementById('post').value;                
                var url = "http://localhost:8080/chat/it?post=" + post;
                request.open("GET", url);
                request.send(null);
            }
            Handler.add(document.getElementById('postBtn'), "click", postHandler);
        };
    </script>
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <div id="chatRoom"></div>
    <input type="text" class="post" id="post" />
    <input type="button" class="postBtn" id="postBtn" value="post"/>
</asp:Content>




F# snippet
Код: c#
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.
40.
41.
42.
43.
namespace Simple
open System.Net
module HttpListener =    
    type msg =
    | Incr of string
    | Fetch of AsyncReplyChannel<string>

    let run (url:string,handler: (HttpListenerRequest -> HttpListenerResponse -> Async<unit>)) = 
        let listener = new HttpListener()
        listener.Prefixes.Add url
        listener.Start()
        let asynctask = Async.FromBeginEnd(listener.BeginGetContext,listener.EndGetContext)
        async {
            while true do 
                let! context = asynctask
                Async.Start (handler context.Request context.Response)
        } |> Async.Start 
        listener
    
    let counter =
        MailboxProcessor.Start(fun inbox ->
            let rec loop p =
                async { let! msg = inbox.Receive()
                        match msg with
                        | Incr(x) -> return! loop(p + x)
                        | Fetch(replyChannel) ->
                            replyChannel.Reply(p)
                            return! loop(p) }
            loop null)

    let up = run("http://localhost:8080/Chat/", (fun req resp -> 
            async { // post format: http://localhost:80/Chat/it?post=message 
                let post = try req.QueryString.GetValues("post") |> Array.min with e -> "no comment\n"
                counter.Post(Incr (sprintf "<div class='chatroom'>%s</div>" post))
                let str = counter.PostAndReply(fun replyChannel -> Fetch replyChannel)
                let out = System.Text.Encoding.ASCII.GetBytes (sprintf "<div class='chatroom'>%s</div>" str)
                resp.OutputStream.Write(out,0,out.Length)
                resp.OutputStream.Close()
            }
        )) 

    up |> fun server -> printf "server.IsListening: %b\n" server.IsListening
    System.Console.Read () |> ignore


https://skydrive.live.com/?cid=837DA20FBA6DED21&id=837DA20FBA6DED21%21789
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746227
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
st_stЕсли везде понатыканы html-хелперы
Если не понятно, хелперы нужны, для повторного использования разметки, и ее модификации.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746237
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tsyselskyМожет кому сгодится кусок кода на JS, клиент для "F# чятика"
Весь этот бессмысленый слив, сокращается с ипользованием JS фреймворков, но и это не поможет :)
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746251
Фотография tsyselsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонtsyselskyМожет кому сгодится кусок кода на JS, клиент для "F# чятика"
Весь этот бессмысленый слив, сокращается с ипользованием JS фреймворков, но и это не поможет :)

Дядька, большая часть кода это утилитки для работы с ивентами, кросброузерно.
И обертка над XHR. А то что можно заюзать сторонний модуль ни для кого не секрет, кеп.

Ты в код этих самых фреймворков, заглядывал иногда? Ну хотя бы ради самообразования :]
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746285
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tsyselskyТы в код этих самых фреймворков, заглядывал иногда? Ну хотя бы ради самообразования :]
Когда я начинал заглядывать в код, клиентских фреймворков не существовало
Многие, как вижу, до сих пор не понимают, как и зачем с ними работать.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746292
Фотография tsyselsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонtsyselskyТы в код этих самых фреймворков, заглядывал иногда? Ну хотя бы ради самообразования :]
Многие, как вижу, до сих пор не понимают, как и зачем с ними работать.

На основании чего Вы сделали такой вывод?
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746299
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tsyselskyНа основании чего Вы сделали такой вывод?
На основании увиденного..
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746302
Фотография tsyselsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонtsyselskyНа основании чего Вы сделали такой вывод?
На основании увиденного..

Уточните, плиз.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746309
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tsyselskyПарамонпропущено...

На основании увиденного..

Уточните, плиз.
Бреда, который вы привели в качестве кода.
Займитесь лучше земледелием, Вам ведь нравилось :)
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746316
Oopss...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторМногие, как вижу, до сих пор не понимают, как и зачем с ними работать.
jQuery (к примеру - JS FW ;) - туда понапихали всего всего (как обычно бывает с FW!)... а, на странице нужен тупо ajax! и всё всё всё остальное использоваться НИКОГДА не будет!
Внимание вопрос : зачем использовать jQuery, если знаешь как создать XMLHttpRequest своими руками ?
to tsyselsky
зы: javascript code - получился отстойненький! ;)
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746318
Фотография tsyselsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Парамонtsyselskyпропущено...


Уточните, плиз.
Бреда, который вы привели в качестве кода.
Займитесь лучше земледелием, Вам ведь нравилось :)

Вы смысл слова "Уточните" понимаете?
Выделите из приведенного "снипета" кусок кода нажмите ctrl+C и вставьте его в свой пост с комметариями, почему код не качественный.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746331
Фотография tsyselsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oopss...зы: javascript code - получился отстойненький! ;)
[/spoiler]

Конечно, это просто снипет. Я хочу что бы Парамон сказал что в нем не так.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746343
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oopss...jQuery (к примеру - JS FW ;) - туда понапихали всего всего (как обычно бывает с FW!)...

Вы все еще в каменном веке? Ваш диалап не поднимает страничку с лишними 10k?

Oopss...всё всё всё остальное использоваться НИКОГДА не будет!

Уверенны? В ваших роектах на марсе, нет переделок и доработок,? На земле есть ;)
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746378
Oopss...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to Парамон

конечно есть! только я программист, и в состоянии добавить\убрать необходимый\лишний функционал из проекта! И для начала работы мне нужен только javascript (частный пример), а не всевозможные FW на нём!
авторВаш диалап не поднимает страничку с лишними 10k?
ЗАЧЕМ?!

просьба: не спеши сответами - делаешь кучу грамматических ошибок (глаза режет сильно ;)

to tsyselsky
авторЯ хочу что бы Парамон сказал что в нем не так.
О! Что то личное?! ;)
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746394
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tsyselsky
Код: c#
1.
var url = "http://localhost:8080/chat/it?post=" + post;


Код: c#
1.
request.open("GET", url);




Вас учили переменным, давать осмысленные имена?

Метод гет, и переменная пост? Вас нужно электричеством лечить
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746404
Фотография tsyselsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oopss... to Парамон

to tsyselsky
авторЯ хочу что бы Парамон сказал что в нем не так.
О! Что то личное?! ;)

Парамон >> Что за вялый холивар?
Парамон >> Ладно, попробую подлить масла )

Парамон посетовал 12379983 , на то что холивар вялый. Я просто выполняю его пожелания,
подкидываю дровишки и немного кода в топик.
Just for fun.
...
Рейтинг: 0 / 0
MVC vs WebForms
    #37746405
Парамон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oopss... to tsyselsky
авторЯ хочу что бы Парамон сказал что в нем не так.
О! Что то личное?! ;)
Может он неравнодушен!? o_0
...
Рейтинг: 0 / 0
25 сообщений из 180, страница 4 из 8
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MVC vs WebForms
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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