C# 使用stream进行字符串文字比较

C# 使用stream进行字符串文字比较,c#,flee,C#,Flee,我尝试使用flue进行字符串文字检查,但无法使其正常工作,当我指定我尝试检查的字符串值时,它尝试使用变量。以下是纽约代码: var context = new ExpressionContext(); context.Variables.DefineVariable("User", typeof(User)); const string exp = @"(User.UserName = JWilly)"; var expression = context.CompileDynamic(exp

我尝试使用flue进行字符串文字检查,但无法使其正常工作,当我指定我尝试检查的字符串值时,它尝试使用变量。以下是纽约代码:

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();

即使嵌入到另一个字符串文字中,字符串文字也是字符串文字。因此:

 const string exp = @"(User.UserName = ""JWilly"")";
会有用的。(请注意双引号与
@
一起使用)