Pull to refresh
18
0
Игорь @Igorbek

User

Send message
Тоже занимался данной проблемой недавно, искал тоже в сторону <assemblyBinding>, но не докопал.
Нашел только решение через AssemblyResolove. А вот хотелось бы как раз просто конфиг. Поэтому спасибо огромное.
В дополнение: у вас среди вариантов processorArchitecture нет варианта ARM, а это уже актуально с WinRT. В доке <assemblyBinding> варианта ARM нет, а вот в самом перечислении ProcessorArchitecture появился Arm. Так что можно опробовать.
Во! А у меня всё нативно =) и c++ реализация намного быстрее.
Поддерживать буду в разумных пределах:
  • периодически обновлять libsass
  • отвечать на вопросы
  • фиксить баги

Также отмечу, что все исходники доступны свободно.
В планах:
  • сделать поддержку внешних функций
  • впилить поддержку compass
  • сделать задачу msbuild
Все верно. Но еще для много чего использовать компиляцию удобнее.
Так я же вам и написал более элегантное решение. Вот такая сигнатура:
public static IQueryable<T> WhereContains(this IQueryable<T> source, IEnumerable<TResult> values, Expression<Func<T, TResult>> selector)

Использовать очень просто:
source.WhereContains(new [] { value1, value2, value3 }, obj => obj.FieldOrProperty);

Реализовать такую функцию можно без проблем, использую ExpressionVisitor.
Такое выражение развернется в:
source.Where(obj => obj.FieldOrProperty == value1 || obj.FieldOrProperty == value2 || obj.FieldOrProperty == value3);

То же самое, что делает ваша функция, только строготипизировано. Использовать from… where… select конечно нельзя.
А есть и более сложное, но элегантное решение. Можно подменить QueryProvider и там при конструировании .Where анализировать деревья выражений на наличие замыканий и также переписывать выражения.
Насколько я понял, проблема состояла в том, что вы вызывая код:
source.Where(item => values.Contains(item.Property))

в полученное выражение подставляется замыкание на values.
Для решения этой простой задачи вы наворотили какое-то странное решение, где вы начисто убили строгую типизацию, в чем есть смысл LINQ (intergrated!).
Тут много достаточно хороших способов решения.
Например, можно транслировать дерево выражения, заменив замыкание values на составляющие Or.
А еще лучше сделать отдельную Where Where(this IQueryable<T> source, Expression<Func<T,TResult>> selector, IEnumerable<TResult> values). Там бы и конструировался ваш запрос с помощью Or.
  1. не люблю интерпретаторы — они медленны;
  2. нет строгой типизации;
  3. нет поддержки intellisense.

За ссылку спасибо, интересно.
Если речь идет о SharpKit, то отлаживать непосредственно C# исполняемый в виде JavaScript'а на браузере нельзя. Можно просто отлаживать JavaScript — там все понятно: что, где и откуда. Конечный код почти полностью соответствует исходному.
Да, есть немного. Только технологический стек другой.
Всегда с усложнением задач, нужен инструментарий для более эффективной работы. В ручную писать JavaScript, без контроля типов, совсем сложно стало. Вот появляются инструменты.
Этот код будет работать в JavaScript. Там нет HttpUtility.HtmlEncode. Читайте внимательнее =)
Это история случайно не в Волгограде происходила?
Может быть упустили, что «В прошлом наши компиляторы работали как черные ящики»? =)
Ответ линчевателям от Sebro (проект 3)
Большое спасибо за разбор проекта. Если в общем, то изложенные проблемы нам понятны, и мы, конечно же, о них задумывались.
  1. SEO-продвижение – не стандартизированная услуга. Во многом это так, но мы все-таки пытаемся формализовать. Но формализуем мы не услугу, а контракт. Описание контракта может быть довольно гибким в системе, что позволит охватить довольно большой спектр потребностей.
  2. Узкая специализация на SEO. Во-первых, у нас, как у команды, есть смежные проекты, и есть пути их пересечения в дальнейшем, просто на данный момент это не нужно. Мы только нащупываем для них уверенный курс. Во-вторых, конечно же, проект не останется в том виде, как он есть сейчас — есть довольно большие планы как по расширению функционала так и охвата смежных услуг. Мы понимаем, что одна из составляющих залога успеха — в непрерывном развитии. К, сожалению счастью есть негативный опыт. В-третьих, мы не считаем, что узкая специализация это всегда плохо — это может быть наш «голубой океан».
  3. Разрешение споров. Позиция по данному вопросу не окончательна и требует большего анализа. Мы себя не позиционируем как всеобъемлющий God-сервис, который должен решать все возникающие проблемы между сторонами. Мы берем на себя функцию контроля и гарантии оплаты по результатам этого контроля. Не больше и не меньше. Контракт в системе — это некоторая базовая позиция, договоренность и гарантии. Но для взаимовыгодного сотрудничества надо, в том числе, и договариваться самим в спорных ситуациях. А по поводу объективных причин недостижения результатов — здесь тоже не все так просто, это вопрос рисков и того кто должен их на себя брать.
Мы сейчас на первой волне запуска получили достаточно большое количество обратной связи как со стороны исполнителей так и со стороны заказчиков. Мы хотим соблюсти баланс в интересах.
Мы многие аспекты серьезно проработали и работаем над соответствующими изменениями в системе. Они появятся уже в ближайшее время.
Пока, в общем-то, мы работаем на малом ходу, оставляя пространство для маневра. Собираем и учитываем проблемы, обратку и пр.
Чуть позже мы подробно ответим на комментарии от FLV. Конечно, не перепалку, а просто наше видение тех возможных проблем, о которых они сказали.
Спасибо за предложение. У нас уже есть в планах развитие в этом направлении. если я правильно понял о чем вы говорите. / Разработчик Sebro /
Вот много twitter-клиентов под Win7 перепробовал — все жутко глючные, а этот Tweeki достаточно приятный. Буду пока его использовать.
О! Отлично. Загрузил… устанавливается

Information

Rating
Does not participate
Location
Волгоград, Волгоградская обл., Россия
Date of birth
Registered
Activity