powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как получить результат, если само выражение есть строка
25 сообщений из 25, страница 1 из 1
Как получить результат, если само выражение есть строка
    #39022445
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть форма ввода с некоторыми полями.
На одно из полей сделано условие: введенное значение равно 5. Человек отправляет форму на сервер.
В итоге получаем что-то типа такого на сервере после преобразований: "5 == 5", но в строковом варианте

Как теперь получить результат эквивалентности в виде bool?
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022467
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha,
Думаю, проблема не в том как получить результат, а в том в каком виде все это возвращается на сервер.
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022498
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Axeleron,

На сервер попадает все в таком виде: "value==\"5\"" или .
Всегда работа со строкой. value подставляется на сервере.
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022506
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022513
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Где-то в степи,

Для меня такое не прокатит, у меня все операции в строках.
Такой Expression отправляется на клиента и там еще может обрабатываться. Для js
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022515
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha,
Я же и говорю, что-то в корне не правильно.
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022517
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Где-то в степи,

Например так еще: return value>="1" && value<="5". Так на клиенте и такое же я получаю на сервере
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022521
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha,
Раз до такого степени запущено, то только парсер свой писать. Но вообще решение крайне незрелое (незрелого программиста).
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022527
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Axeleron,

Это мои исходные данные, не я писал.
Спросил можно ли малой кровью обойтись. Если нет, то понятно что парсить надо все
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022533
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha,
Ну я ни на кого не намекал, если что :)
Боюсь, что придется парсер строки писать и приводить к типам и операторам, потому же обрабатывать. К сожалению, задача - УГ.
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022547
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha,
вам на сервере нужно узнать результат "5 == 5" типа true, так я вам дал рецепт как получить его на сервере.
потом на никто глянул, и понял что вы еще на заре эволюции, там как это вы собрались експрессионом джаваскрипт
разбавить на клиенте, очень интересно гы.
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022562
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Где-то в степи,

Да, именно так.
Есть такой класс:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
public static string GetJavaScriptExpression(this IConDes condition, string value)
        {
            var value1 = Json.Encode(condition.Value1);
            var value2 = Json.Encode(condition.Value2);

            switch (condition.Operator)
            {
                case ConditionOperator.Equals:
                    return value+ "==" + value1;
                case ConditionOperator.NotEquals:
....................................................................
            }



Нужно просто получить bool результат от условия и все
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022567
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Pavluha,

Почему так, потому что сделано на строках. не моя прихоть. А писать парсер времени нет
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022573
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha,

.. может, вы имеете в виду что-то типа String.Compare Method (String, String, Boolean) ??
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022579
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
carrotik,

надо, как на клиенте:
Код: javascript
1.
2.
3.
value = 5;
function f(){return value>="1" && value<="5"}
alert(f());



Чтобы было true и при value = 5; и при value = "5";
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022582
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavluha,

...ну так ToString эту числовую пятерку, если уж так все запутано ... буква "х" всегда будет больше буквы "у", а обе они всегда будут больше буквы "й" ...
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022937
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PavluhaА писать парсер времени нет

придётся выделить время
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39022977
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Берем ANTLR и пишем
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39023185
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAБерем ANTLR и пишем

для такой фигни?
Юзер вообще-то не дал определение языка, может там за час можно сделать руками
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39023200
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Winnipuhможет там за час можно сделать руками
топикстартер за час не справится
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39023506
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39023514
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WinnipuhskyANAБерем ANTLR и пишем

для такой фигни?
Юзер вообще-то не дал определение языка, может там за час можно сделать рукамиА с ANTLR по Вашему неделю что-ли придётся сидеть? :)

Также не ясен масштаб "фигни".
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39023584
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
2.
3.
4.
5.
6.
 static void Main(string[] args)
        {
            Console.WriteLine(System.Linq.Dynamic.DynamicExpression.ParseLambda<int, bool>("5==5").Compile().Invoke(-1));
            Console.WriteLine(System.Linq.Dynamic.DynamicExpression.ParseLambda<int, bool>("5==6").Compile().Invoke(-1));
            Console.WriteLine(System.Linq.Dynamic.DynamicExpression.ParseLambda<int,int>("5 + 6").Compile().Invoke(-1));
        }
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39024095
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAWinnipuhпропущено...


для такой фигни?
Юзер вообще-то не дал определение языка, может там за час можно сделать рукамиА с ANTLR по Вашему неделю что-ли придётся сидеть? :)

Также не ясен масштаб "фигни".

или больше, если юзер не сталкивался с ним. Кроме того - оно вроде как не генерирует чистый парсер в c# или есть зависимости?
Имхую, что это ттот случай, когда девелопер нырнет в тему и забудет с чего начал
...
Рейтинг: 0 / 0
Как получить результат, если само выражение есть строка
    #39024401
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WinnipuhskyANAпропущено...
А с ANTLR по Вашему неделю что-ли придётся сидеть? :)

Также не ясен масштаб "фигни".

или больше, если юзер не сталкивался с ним. Кроме того - оно вроде как не генерирует чистый парсер в c# или есть зависимости?
Имхую, что это ттот случай, когда девелопер нырнет в тему и забудет с чего начал С чего Вы взяли, что C#, а не JavaScript :)
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как получить результат, если само выражение есть строка
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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