powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Asp.Net vs WCF
25 сообщений из 380, страница 7 из 16
Asp.Net vs WCF
    #38790603
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIНет никакого парадокса, парадоксов полно в определениях реста
Точнее не парадоксов а неопределенностей.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790608
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKI, ну теории я тебе достаточно дал. Тперь упражнение:

Как ты на базе SOAP реализуешь принцип Give every “thing” an ID ?
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790637
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAТебе не обязательно их видеть, главное чтобы мы могли поржать
Пока поржать можно только с тебя
skyANASOAP используют HTTP как транспортный протокол, в то время как REST базируется на нем.
Идем в официальную доку

Ткни пальцем, где написано что REST базируется на HTTP!
Ткни пальцем где написано что в REST параметры нужно в HTTP передавать?
Допиши сюда еще все свои утверждения и тыкай пальцем!
skyANAЭто означает, что все существующие наработки на базе протокола HTTP, такие как кеширование на уровне сервера, масштабирование, продолжают так же работать в REST архитектуре, а для SOAP необходимо искать другие средства.
Да неужели, а с WCF SOAP делать кеширование и масштабировать религия не позволяет?
Все что ты пишешь это твои хотелки и "устоявшиеся соображения и мнения" с концепции REST они имеют очень мало общего.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790638
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУТы пойди это твиттерам, шмиттерам, гуглам, MS И всяким фейсбукам расскажи. Тебя пугает отсутствие кодогенерации классов по голому REST? Так возьми это http://codearticles.ru/articles/2521 и нашлепай себе классов.

Кажется с самого начала топика Алексей сказал, что не может выбирать, там уже всё решили. Так что этот спич для генерации кругов вилами по воде.++

Но хуже всего то, что я с выбором данного корпоративного стандарта полностью согласен. :-)
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790645
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей Кголый REST не для интеграций.
Ты пойди это твиттерам, шмиттерам, гуглам, MS И всяким фейсбукам расскажи. Тебя пугает отсутствие кодогенерации классов по голому REST? Так возьми это http://codearticles.ru/articles/2521 и нашлепай себе классов.Меня расстраивает отсутствие схемы. Кодогенерация - это одна из возможностей, которая есть благодаря наличию схемы.

Ведь никого не удивляет наличие метаданных в .Net Assembly или TLB в COM. А тут какие-то недалёкие вдруг решили, что схема нам больше не нужна, голый REST наш выбор, будем хреначить всё наобум. Удачи!
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790648
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIskyANAТебе не обязательно их видеть, главное чтобы мы могли поржать
Пока поржать можно только с тебя
skyANASOAP используют HTTP как транспортный протокол, в то время как REST базируется на нем.
Идем в официальную доку

Ткни пальцем, где написано что REST базируется на HTTP!
Ткни пальцем где написано что в REST параметры нужно в HTTP передавать?
Допиши сюда еще все свои утверждения и тыкай пальцем!А ты с самого начала документ почитай.

EDUARD SAPOTSKIskyANAЭто означает, что все существующие наработки на базе протокола HTTP, такие как кеширование на уровне сервера, масштабирование, продолжают так же работать в REST архитектуре, а для SOAP необходимо искать другие средства.
Да неужели, а с WCF SOAP делать кеширование и масштабировать религия не позволяет?Спокойно :) Где ты хотябы намёк увидел на то, что "религия не позволяет"?

EDUARD SAPOTSKIВсе что ты пишешь это твои хотелки и "устоявшиеся соображения и мнения" с концепции REST они имеют очень мало общего.Однако теперь ты употребил термин "концепция REST". Может раскроешь нам, что ТЫ в него вкладываешь?
Чтобы мы на одном языке говорили.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790657
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKI,

Филдинг со своими принципами REST ничего не изобрел , а просто собрал в одну диссертацию то, что уже существовало в каком-то виде и изложил то, как можно получать максимальную выгоду из уже сформировавшейся архитектуры сети.

SOAP и REST – не конкуренты . Они представляют разные весовые категории и вряд ли найдется задача, для которой будет сложно сказать, какой подход рациональнее использовать – SOAP или REST. Поэтому «религиозные» убеждения в вопросах выбора архитектуры для веб-сервиса вряд ли будут полезны.

Для тех, кто не знает, с чего начать анализ задачи, могу порекомендовать эту презентацию. У них чаще побеждает REST.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790661
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAА ты с самого начала документ почитай.
И чо? Цитату в студию! Где написано - "REST базируется на HTTP"!
skyANAМожет раскроешь нам, что ТЫ в него вкладываешь?
Как не странно, но вкладываю то же самое что и ты. Только ты первый в холивар полез с определениями, из-за того что я употребил REST рядом с OData, поэтому и я тебе пытаюсь объяснить, что если уже залазить в конкретику, то REST это сферическая абстрактная метода, на которую можно спихнуть что угодно при желании!
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790667
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA Филдинг со своими принципами REST ничего не изобрел , а просто собрал в одну диссертацию то, что уже существовало в каком-то виде и изложил то, как можно получать максимальную выгоду из уже сформировавшейся архитектуры сети.
БИНГО!!!
А ты твердолобый!
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790671
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKI,

Ты начал с утверждений вида "рест изначально разрешает все а соап ничего", а в итоге доказал, что сам дурак :)
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790681
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сначала делаешь не корректные утверждения, а потом удивляешься тому, что я за них зацепился :)

Дак не делай не корректных утверждений!
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790685
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAТы начал с утверждений вида "рест изначально разрешает все а соап ничего", а в итоге доказал, что сам дурак :)
Хорошо, каюсь, имел ввиду OData, чаще всего тупо дают полный доступ на таблицы и из клиентов можно делать с ними что хош. С одной стороны это удобно, с другой вызывает ряд траблов. В SOAP пока не напишешь метод с определенным функционалом ничего клиент не сделает. Это более геморно в плане писанины, зато изначально полный контроль над серверным функционалом.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790687
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIГде написано - "REST базируется на HTTP"!Нарисовано!



Ну и с самого начала диссертации повествование идёт в контексте WWW, HTTP, URI :)
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790693
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIskyANAТы начал с утверждений вида "рест изначально разрешает все а соап ничего", а в итоге доказал, что сам дурак :)
Хорошо, каюсь, имел ввиду OData, чаще всего тупо дают полный доступ на таблицы и из клиентов можно делать с ними что хош. С одной стороны это удобно, с другой вызывает ряд траблов. В SOAP пока не напишешь метод с определенным функционалом ничего клиент не сделает. Это более геморно в плане писанины, зато изначально полный контроль над серверным функционалом.Каким это образом "дают полный доступ на таблицы" без "пока не напишешь метод"?
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790698
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот у меня MongoDB. Как я могу дать "полный доступ на таблицы"? Там таблиц-то нет
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790736
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КМеня расстраивает отсутствие схемы. Кодогенерация - это одна из возможностей, которая есть благодаря наличию схемы.
Ну возьми OData, там есть кодогенерация. Да и что тебе кодогенерация, можно же генерить классы на лету по на основе JSON. То есть никакого ручного кодирования.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790744
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIХорошо, каюсь, имел ввиду OData, чаще всего тупо дают полный доступ на таблицы и из клиентов можно делать с ними что хош.
Ты же сам определяешь в ODataConventionModelBuilder, какие таблицы будут доступны, какие поля можно вообще скрыть и многое другое. ACL можно подключить, вообщем всё гибко конфигурится. Это плохо? Мне всегда казалось, что это очень хорошо. Не нужно изобретать велосипед.

Вот тебе классический OData CRUD контроллер над сущностью в двумя ключами, минимум кода - максимум возможностей на клиенте для выборок, фильтров, условий, вычислений. Это плохо? Да это просто чудесно, SOAP'у такого и не снилось! Нужно где-то что-то ограничить, проанализировать OData параметры, всё это делается на один чих. Что тебя смущает?

Код: 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.
[ODataRoutePrefix("ShopTills")]
public class ShopTillsController : BaseController
{
    [EnableQuery, ODataRoute]
    public IHttpActionResult Get()
    {
        return Ok(Context.ShopTills);
    }

    public async Task<IHttpActionResult> Post(ShopTill st)
    {
        Context.ShopTills.Add(st);
        await Context.SaveChangesAsync();
        return base.Created(st);
    }

    [ODataRoute("(SiteId={siteId},TillNumber={tillNumber})")]
    public async Task<IHttpActionResult> Patch(int siteId, int tillNumber, Delta<ShopTill> patch)
    {
        var st = await Context.ShopTills.FindAsync(siteId, tillNumber);
        if (st != null)
        {
            patch.Patch(st);
            await Context.SaveChangesAsync();
            return Updated(st);
        }

        return NotFound();
    }

    public async Task<IHttpActionResult> Delete(int key)
    {
        var st = await Context.ShopTills.FindAsync(key);
        if (st != null)
        {
            Context.ShopTills.Remove(st);
            await Context.SaveChangesAsync();
            return StatusCode(HttpStatusCode.NoContent);
                
        }

        return NotFound();
    }
}
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790779
Фотография Диез
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей КМеня расстраивает отсутствие схемы. Кодогенерация - это одна из возможностей, которая есть благодаря наличию схемы.
Ну возьми OData, там есть кодогенерация. Да и что тебе кодогенерация, можно же генерить классы на лету по на основе JSON. То есть никакого ручного кодирования.

Если я правильно понимаю Алексея К, кодогенерация хороша не из-за того, что лениво руками классы кодировать, а из-за того, что можно на компилятор возложить бОльшую часть работы по валидации модели, если партнер свой сервис обновил криво :)

А вот еще я правильно понимаю, что метаданные OData - это по сути, модель Entity Framework?
Вообще, насколько реально реализовывать службы OData без использования EF ?
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790780
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

фигня все это (хардкод)
пока замену всеядного СКЛ не там ищут
всеядность СКЛ мотивирована зачаточным состоянием структурных зависимостей в РМД
хотя всеядность в СКЛ тоже так себе (Селект возвращает не подсхему модели, а таблицу, что не есть хорошо)
а все эти дебилизмы в виде параметризировнного URI вое убого выглядят
а СКЛ между прочим был задуман как инструмент ЮЗЕРА!!!
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790798
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДиезЕсли я правильно понимаю Алексея К, кодогенерация хороша не из-за того, что лениво руками классы кодировать, а из-за того, что можно на компилятор возложить бОльшую часть работы по валидации модели, если партнер свой сервис обновил криво :)
Если сервис партнера - неподъемная глыба с тысячами методов, это одно. Если это обычная классическая интеграция с десятком методов, жестко описанных в документации - это другое. Да и нормальные партнеры (а не инопланетяне) создают методы новой версии , а не меняют старые. В любом случае (для любителей схемы) есть OData, которая решает эти вопросы.

[quot Диез]А вот еще я правильно понимаю, что метаданные OData - это по сути, модель Entity Framework? [quot Диез]
Нет, это не EF. Это IEdmModel , на которой базируется и EF в том числе. Это очень гибкая конструкция, можно описать таким способом любую модель.

ДиезВообще, насколько реально реализовывать службы OData без использования EF ?
Я же выше давал рецепт - интеграция с аксаптой. Там нету вообще ни EF, ни даже IQueryable. Ну это самый жесткий способ кастома. Самый безобидный способ - тот, где можно оперировать IQueryable. EF вообще не обязателен.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790802
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Диез, просто ORM'ы чем хороши, тем, что они могут транслировать IQueryable в SQL. Это и EF, и L2S, и NHibernate. Чтобы не писать велосипед по трансляции IQueryable в SQL (или иной язык, напр. выше я писал свой транслятор на X++ для аксапты) - лучше использовать готовый двиг. И EF один из них. Концепция понятна?
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790863
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУДиезЕсли я правильно понимаю Алексея К, кодогенерация хороша не из-за того, что лениво руками классы кодировать, а из-за того, что можно на компилятор возложить бОльшую часть работы по валидации модели, если партнер свой сервис обновил криво :)
Если сервис партнера - неподъемная глыба с тысячами методов, это одно.Партнёров много. Там дикое переплетение вебсервисов различной сложности, написанных неизвестно кем, неизвестно на чём, неизвестно когда, неизвестно зачем.
МСУЕсли это обычная классическая интеграция с десятком методов, жестко описанных в документации - это другое.В документации контракт сервиса как будем описывать? Ссылка из технического задания в туда будет смотреться достаточно глупо. :-)
МСУДа и нормальные партнеры (а не инопланетяне)Бывают нормальные партнёры?
МСУсоздают методы новой версии , а не меняют старые.И такое бывает.
МСУВ любом случае (для любителей схемы) есть OData, которая решает эти вопросы.Зачем менять платформу, если существующая устраивает? Пока будем менять, ОДата устареет и появится что-нибудь новое, "теперь правильное".
МСУНет, это не EF. Это IEdmModel , на которой базируется и EF в том числе. Это очень гибкая конструкция, можно описать таким способом любую модель.В WSDL любую модель не описать, да? :-)
МСУпропущено...

Я же выше давал рецепт - интеграция с аксаптой. Там нету вообще ни EF, ни даже IQueryable. Ну это самый жесткий способ кастома. Самый безобидный способ - тот, где можно оперировать IQueryable. EF вообще не обязателен.Некоторые считают, что IQueryable не должен покидать рамки репозитария, а ты предлагаешь тащить его на клиента. Это жесть просто, учитывая тот факт, что задачи вроде пэйджинга прекрасно решаются банальным ООП-наследованием. Никакие "новые технологии" тут не нужны.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790895
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУИ вообще, IQueryable - это специфичная дотнетная возможность. Как оно может претендовать на кроссплатформенный кроссязыковой стандарт?
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790928
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КПартнёров много. Там дикое переплетение вебсервисов различной сложности, написанных неизвестно кем, неизвестно на чём, неизвестно когда, неизвестно зачем.
Ага, то есть льём дальше гавно в навозную бочку? Я понял твою философию.

Алексей КВ документации контракт сервиса как будем описывать? Ссылка из технического задания в туда будет смотреться достаточно глупо. :-)
https://developers.facebook.com/docs/javascript/reference/FB.api

Алексей КБывают нормальные партнёры?
Бывают.

Алексей КМСУсоздают методы новой версии , а не меняют старые.И такое бывает.
Ну от идиотов никто не застрахован. Тут даже SOAP не поможет.

Алексей КМСУВ любом случае (для любителей схемы) есть OData, которая решает эти вопросы.Зачем менять платформу, если существующая устраивает? Пока будем менять, ОДата устареет и появится что-нибудь новое, "теперь правильное".
Если тебе предлагают новый мерседес взамен старого запорожца, почему бы не взять? Хотя оба таки ездят.

Алексей КВ WSDL любую модель не описать, да? :-)
В WSDL нельзя описать модель, это процедурный протокол. Методология разработки в WDSL сервисно-ориентированная, в REST- ресурсно-ориентированная. Два полярных знаменателя.

Алексей КНекоторые считают, что IQueryable не должен покидать рамки репозитария, а ты предлагаешь тащить его на клиента. Это жесть просто, учитывая тот факт, что задачи вроде пэйджинга прекрасно решаются банальным ООП-наследованием. Никакие "новые технологии" тут не нужны.
Причем тут OData? Делай свой репозитарий, в котором внутри будешь использовать OData и IQueryable, а на выходе отдавать IEnumerable. Какие-то глупости ты пишешь...
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38790931
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КМСУИ вообще, IQueryable - это специфичная дотнетная возможность. Как оно может претендовать на кроссплатформенный кроссязыковой стандарт?
Это ты спроси у консорциума OASIS, а не у меня. Да и причем тут IQueryable? Сервис OData на .NET, клиенты могут быть любые. И им не нужны IQueryable. В .NET клиенте может появиться IQueryable, если ты используешь это https://www.nuget.org/packages/Microsoft.OData.Client
А если дергать OData сервис через обычный HttpClient, то никаких IQueryable.
...
Рейтинг: 0 / 0
25 сообщений из 380, страница 7 из 16
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Asp.Net vs WCF
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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