linq - Dynamic Expression Building Error -
i have searched lot regarding issue wrong here
shorter version of code /// companyid integer type value here 220 var cond1 = buildexpression(companyid); var acntlst=entities.accounts.where(cond).tolist(); account class querying against account collection
buildexpression function
private static expression<func<account, bool>> buildexpression(string companyid) { var paramexp = expression.parameter(typeof (account), "p"); var proprty = typeof(account).getproperty("companyid"); var prpexp = expression.property(paramexp, proprty); var varexp = expression.variable(typeof(int32), companyid); var cond1 = expression.equal(prpexp, varexp); return expression.lambda<func<account, bool>>(cond1,paramexp); } error message is
the parameter '220' not bound in specified linq entities query expression
expression.variable(typeof(int32), companyid); this creates variable named "220".
never declared variable or assigned value.
instead, want expression.constant, takes value , returns expression has value.
(you need parse string int)
however, don't need build hand @ all.
instead, should write return => a.companyid == companyid
Comments
Post a Comment