Используя строковое литеральное сравнение, используя бегство - PullRequest
0 голосов
/ 29 мая 2018

Я пытаюсь выполнить проверку строкового литерала, используя Flee, но я не могу заставить его работать, когда я указываю строковое значение, которое я пытаюсь проверить, пытается ли он вместо этого использовать переменную.Вот новый код:

var context = new ExpressionContext();
context.Variables.DefineVariable("User", typeof(User));

const string exp = @"(User.UserName = JWilly)";

var expression = context.CompileDynamic(exp);

var user = new User
{
    Id = 1,
    UserName = "JWilly",
    Active = false, 
};

context.Variables["User"] = user;

var result = expression.Evaluate();

1 Ответ

0 голосов
/ 29 мая 2018

Строковый литерал - это строковый литерал, даже если он встроен в другой строковый литерал.Следовательно:

 const string exp = @"(User.UserName = ""JWilly"")";

будет работать.(Обратите внимание на двойные кавычки в сочетании с @.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...