mvc ef LINQ to Entities 不识别方法“Int32 Parse(System.String)”,因此该方法无法转换为存储表达式。



private sys_User GetUserInfo()
{
sys_User model = null;
var userId = Convert.ToInt32(AccountHelper.GetAccountUserId());
var list = BLLSingleton.Instance.IUserService.GetListBy(c => c.UserId == userId);
if (list != null)
model = list.FirstOrDefault();
return model;
}

 

---------------------------------------------------------------------------------------

mvc ef  识别不了的(会报LINQ to Entities 不识别方法“Int32 ToInt32(System.String) 错误)

原因在于linq表达式中无法识别convert方法.

因为where里面不能调用这种convert等C#方法 要么在外面转好了int类型添加进去

tostring等方法也不能放到where里面调用 因为他要解析lamda表达式 而不是去解析C#的方法

所以事前将string转成int 在用

var userId = Convert.ToInt32(AccountHelper.GetAccountUserId());


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM