powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Asp.Net vs WCF
25 сообщений из 380, страница 9 из 16
Asp.Net vs WCF
    #38791133
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIskyANAСмешно. Покажи мне реализацию настраиваемого фильтра, а?
Ты снова тупишь или прикидываешься?
Так пойдет?
Код: sql
1.
2.
3.
4.
5.
6.
7.
create procedure GetProducts
as
begin
	declare @TopProduct int;
	select @TopProduct = Value from Settings where Name = N'TopProducts';
	select top(@TopProduct) ID, Name, Price from Products;  
end


Как дернуть из шарпа рассказать? Снова туплю!

При чём тут настраиваемые фильтры ? Настраиваемый фильтр - это набор условий, что пользователь может накидать у себя в клиенте и отправить серверу, чтобы последний вернул данные, подходящие под эти условия.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791134
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKI, вот о чём сейчас речь: 16770074 .

А ты перепутал с ограничениями сверху на результат получившейся выборки. Не тупи :)
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791137
Фотография Диез
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУДиезЕсли дергать через HTTP, то исчезают все преимущества кодогенерации => строгой типизации. Лесом :)
А не всем нужна кодогенерация. Более того, всем она не нужна. Написал или сгенерил 10 классов руками на основе json, примапил их к выхлопу и готово.

ДиезА вот вижу пример вызова OData-службы из Java:

Код: java
1.
 List<OEntity> Keywords = client.getEntities("Keywords").filter("(PublicationId eq 17) and (TaxonomyId eq 305)").execute().toList();



Опять же, в компайл-тайме никаких проверок.

В-общем, в корпоративе не взлетит. По крайней мере, не в ближайшее время...
java всегда отличалась унынием: вот тебе на .NET

Код: c#
1.
var query = api.Products.Expand(p => p.Category).Expand(p => p.Category.CategoryType).Where(p => p.Name.Contains("Бублик") && p.ProductId > 100);



Не понял, кодогенерация не нужна всем, или не всем она не нужна? )))

JVM и .NET оба унылы, просто унылость у них с разных сторон торчит. ;)

Мне закащег велит, чтобы мою веб-службу могли использовать любые клиенты, с наименьшими претензиями с их стороны. SOAP этому требованию удовлетворяет, а OData - нет.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791141
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНастраиваемый фильтр - это набор условий, что пользователь может накидать у себя в клиенте и отправить серверу, чтобы последний вернул данные, подходящие под эти условия.
skyANAвот о чём сейчас речь: 16770074 .
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
create procedure GetProducts
	@MinPrice money,
	@MaxPrice money
as
begin
	select ID, Name, Price 
	from Products
	where (@MinPrice is null or Price >= @MinPrice)and (@MaxPrice is null or Price <= @MaxPrice)
end


Ну да, это сложно, секунд 10 наверное думал как сделать, c OData наверное гораздо быстрее
ЗЫ Есть правда еще 100500 вариантов, но пофиг.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791145
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKI,

вся соль то в этих 100500 вариантах
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791149
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КСмотри, вот базовый класс контроллеров, поставляющих данные для форм, имеющих сохраняемый фильтр и список:

Хм. Ну вот я про это и говорил. Вот ещё один пример велосипеда для работы с фильтрами.

Как-то из одного, доставшегося мне "по наследству" проекта ел-еле выпилил подобную (очень похожую на приведённый код) бодягу с фильтрами, сортировкой и пейджингом. Дышать стало намного легче, не нужны теперь никакие нафиг "базовые" контроллеры, а параметры фильтрации/пейджинга/сортировки хранятся, управляются и живут полностью независимой своей жизнью. Надо, повесил. Не надо, убрал. Зашибись. Даже не золотое, а платиновое правило: предпочти аггрегацию наследованию . В рамочку из алмазов на стену каждому разработчику.Класс имеет явную прикладную ответственность, SRP в данном случае нарушить вряд ли удастся. Проблем из-за наследования не вижу.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791153
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей Кпропущено...
Я не хожу в SOAP из JS. Там речь шла про REST + OData.
пропущено...
Да зачем это всё надо? Для локальных web-потребностей мне WebAPI + JSON хватает.Ну вот опять мы пришли к тому, что ты оцениваешь технологию сугубо со своей колокольни.Да. Это моё субъективное мнение, я его не навязываю.
skyANAПри чём тут тогда какие-то кроссплатформенные интеграции?Топик об этом.
skyANAНа JS можно писать кросплатформенные мобильные клиенты, а используя OData Client for JavaScript вполне себе кросплатформенно интегрировать их с сервером :)Верю. :-)
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791154
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К1. Для интеграции нет схемы.В случае с REST + OData зачем какая-то схема?Потому то интеграция. Мотивы описаны выше, несколько раз.
skyANAАлексей К2. Внутренние клиенты написаны на JS. Пользы тоже ноль.Ты хотел сказать НЕ на JS?У меня на JS - Web SPA.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791156
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
*Потому что ...
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791160
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIskyANAНастраиваемый фильтр - это набор условий, что пользователь может накидать у себя в клиенте и отправить серверу, чтобы последний вернул данные, подходящие под эти условия.
skyANAвот о чём сейчас речь: 16770074 .
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
create procedure GetProducts
	@MinPrice money,
	@MaxPrice money
as
begin
	select ID, Name, Price 
	from Products
	where (@MinPrice is null or Price >= @MinPrice)and (@MaxPrice is null or Price <= @MaxPrice)
end


Ну да, это сложно, секунд 10 наверное думал как сделать, c OData наверное гораздо быстрее
ЗЫ Есть правда еще 100500 вариантов, но пофиг. Дурака не валяй!
ViPRosвся соль то в этих 100500 вариантах
Сделай так, чтобы пользователь САМ ОПРЕДЕЛЯЛ набор условий, а НЕ ВЫБИРАЛ из вариантов, предлагаемых твоим SOAP сервисом.
Сравним с OData реализацией :)
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791163
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КskyANAпропущено...
В случае с REST + OData зачем какая-то схема?Потому то интеграция. Мотивы описаны выше, несколько раз.
skyANAпропущено...
Ты хотел сказать НЕ на JS?У меня на JS - Web SPA.А такой вопрос: насколько сложно стороннему разработчику будет написать своё Web SPA к твоему API?
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791166
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKI, ты кстати забыл процедуру правильно назвать.

Надо так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
create procedure GetProductsByPriceRange
	@MinPrice money,
	@MaxPrice money
as
begin
	-- ...
end
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791167
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей Кпропущено...
Потому то интеграция. Мотивы описаны выше, несколько раз.
пропущено...
У меня на JS - Web SPA.А такой вопрос: насколько сложно стороннему разработчику будет написать своё Web SPA к твоему API?Не знаю. Это не требуется.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791168
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КskyANAпропущено...
А такой вопрос: насколько сложно стороннему разработчику будет написать своё Web SPA к твоему API?Не знаю. Это не требуется.А если подумать? OData ты вот легко оцениваешь, а свой код не можешь? :)
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791171
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей Кпропущено...
Не знаю. Это не требуется.А если подумать? OData ты вот легко оцениваешь, а свой код не можешь? :)А чего там думать? Обычные WebAPI методы, JSON отдал, JSON принял. Откуда я знаю, как ему будет сложно или легко?

API жёстко сделано под текущие задачи. Гибкости никакой, если ты об этом. Будет нужна гибкость, напишу метод, принимающий SQL-строку. Пусть выбирает то, что ему надо. :-)
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791173
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей ККласс имеет явную прикладную ответственность, SRP в данном случае нарушить вряд ли удастся. Проблем из-за наследования не вижу.

Я к тому, что OData уже содержит всё, что нужно, и встраивать в иерархию контроллеров эту ересь нет смысла, ведь гораздо проще рулить этим со стороны. На клиенте, например, можно с лёгкостью сохранять фильтры как в Local Storage (в случае с анонимным подключением это вообще единственный способ), так и на сервере.

И ещё я к тому, что твои фильтры, которые ты "встроил" в иерархию ни с чем и ни с кем в принципе не совместимы. Вещь внутри. А ОДату можно вязать с кем и с чем угодно.

Теперь представь, что в компании разработали крутейшую компонентую CRUD модель для клиента. Используя твой подход их придётся намертво прибивать кувалдой к этим контроллерам, и никуда уже от этого будет не деться. Это очень плохо.

Вот и речь о том, что OData эти проблемы решает. Дело не в реализации, а в стандарте. Другими словами, вот есть XML и JSON. А ты при этом пилишь какой-то свой транспортный протокол. Зачем-то. Непонятно зачем. Для какой цели? Любой покрути пальцем у виска глядя на это. Случай с OData и со своими ФСП стремительно приближается к этому примеру.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791174
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей Кпропущено...
Не знаю. Это не требуется.А если подумать? OData ты вот легко оцениваешь, а свой код не можешь? :)Можно и LINQ выражения строкой при вызове WebAPI указать, благо Dynamic LINQ есть. OData - не единственный способ добавления гибкости.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791175
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAViPRosвся соль то в этих 100500 вариантах
Сделай так, чтобы пользователь САМ ОПРЕДЕЛЯЛ набор условий, а НЕ ВЫБИРАЛ из вариантов, предлагаемых твоим SOAP сервисом.
Сравним с OData реализацией :)
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791176
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей ККласс имеет явную прикладную ответственность, SRP в данном случае нарушить вряд ли удастся. Проблем из-за наследования не вижу.

Я к тому, что OData уже содержит всё, что нужно, и встраивать в иерархию контроллеров эту ересь нет смысла, ведь гораздо проще рулить этим со стороны. На клиенте, например, можно с лёгкостью сохранять фильтры как в Local Storage (в случае с анонимным подключением это вообще единственный способ), так и на сервере.

И ещё я к тому, что твои фильтры, которые ты "встроил" в иерархию ни с чем и ни с кем в принципе не совместимы. Вещь внутри. А ОДату можно вязать с кем и с чем угодно.

Теперь представь, что в компании разработали крутейшую компонентую CRUD модель для клиента. Используя твой подход их придётся намертво прибивать кувалдой к этим контроллерам, и никуда уже от этого будет не деться. Это очень плохо.

Вот и речь о том, что OData эти проблемы решает. Дело не в реализации, а в стандарте. Другими словами, вот есть XML и JSON. А ты при этом пилишь какой-то свой транспортный протокол. Зачем-то. Непонятно зачем. Для какой цели? Любой покрути пальцем у виска глядя на это. Случай с OData и со своими ФСП стремительно приближается к этому примеру.Я давно вышел из того возраста, когда хотелось делать все решения на все случаи жизни. Я решаю текущие задачи. Большего мне не надо. Будет поставлена другая задача - будет другая архитектура. А пока так.
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791177
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДиезМне закащег велит, чтобы мою веб-службу могли использовать любые клиенты, с наименьшими претензиями с их стороны. SOAP этому требованию удовлетворяет, а OData - нет.
Какой клиент не сможет использовать OData или просто REST?
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791180
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAСделай так, чтобы пользователь САМ ОПРЕДЕЛЯЛ набор условий, а НЕ ВЫБИРАЛ из вариантов, предлагаемых твоим SOAP сервисом.
Сравним с OData реализацией :)
Не задумывался над вопросом - НАФИГА??? SOAP это не HTML страничка! Его дергают или толстые клиенты или SL или другие сервера. У всех у них есть инструменты для фильтрации! Накой им фильтры на отдающем сервере? В 95% случаев нужно отдавать данные за период, пейджинг и... и все! Если найдется умник дергающий из браузера из под JS, то у него мозгов хватит и отфильтровать. В чем проблема? Фишка с фильтрами звучит конечно красиво, но на практике нафиг не нужна. А вот ограничения нужны!
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791189
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КЯ давно вышел из того возраста, когда хотелось делать все решения на все случаи жизни. Я решаю текущие задачи. Большего мне не надо. Будет поставлена другая задача - будет другая архитектура. А пока так.

Я что-то не понял. OData решает задачу, которую ты мог бы не решать (делать свои фильтры), а как раз сосредоточиться на задаче. Или тебя за применение OData линейкой по голове будут бить? Если так, то да. Не надо ,пожалей голову
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791190
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKIВ 95% случаев нужно отдавать данные за период, пейджинг и... и все!

И что SOAP для решения этих задач предлагает?

У OData конкретное обобщённое решение, удовлетворяющее эту потребность без возни со своими интерфейсами для передачи ФСП (фильтр-сортировка-пейджинг). Есть конкретный интерфейс, есть конкретные реализации. Бери и пользуйся. А что есть у SOAP?
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791194
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К, вот тебе OData канал, общаемся бизнесовыми сущностями: http://blogs.office.com/2014/03/24/creating-burndown-charts-for-project-using-power-pivot-and-power-query/
Пишется такой канал за 3 минуты, рецепт показывал выше. Даже контроллеров не нужно писать, просто натравливаем на OData целую edmx. Всё.
Что может предложить твой унылый SOAP? Писать 100500 методов на каждый чих юзера? Пилить под них 100500 отчетов?
...
Рейтинг: 0 / 0
Asp.Net vs WCF
    #38791197
Фотография Диез
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУДиезМне закащег велит, чтобы мою веб-службу могли использовать любые клиенты, с наименьшими претензиями с их стороны. SOAP этому требованию удовлетворяет, а OData - нет.
Какой клиент не сможет использовать OData или просто REST?
9d
Использовать OData - любой может.
Использовать SOAP -любой может.
Использовать REST - любой может.
Использовать CORBA - любой может.
Использовать мой волшебный SuperDIEZ_forDelphi_3..5.. 7-2005_blЯ__INDY_fuck_no_indy9_only_indy10__adapter PROTOCOL - тоже любой может!
...
Рейтинг: 0 / 0
25 сообщений из 380, страница 9 из 16
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Asp.Net vs WCF
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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