2013-07-01 12 views
5

मैं इस त्रुटि मिलती है में अनुवाद नहीं किया जा सकता है जब मैं इस कोड का प्रयास करें:LINQ एक दुकान अभिव्यक्ति

TaxiEntities db = new TaxiEntities(); 
bool IsUserPassCorrected = db.tblOperators.Any(item => item.UserName.ToLower() == txtUserName.Text.ToLower() && 
item.Password == Convert.ToInt32(txtPassWord.Text)); 

if (!IsUserPassCorrected) 
{ 
    MessageBox.Show("Username or Password is incorrected! Please try again"); 
} 
+0

उपयोग कोष्ठक और पार्स/TryParse – Sayse

+0

एक तरफ ध्यान दें, यदि आपका डाटाबेस केस-संवेदी तुम बाहर छोड़ सकता नहीं है ' .ToLower() 'जो इसे पढ़ने के लिए क्लीनर बनाता है। अपने संदर्भ को 'निपटाना' भी न भूलें जो कि 'उपयोग' ब्लॉक के अंदर लपेटा गया है। – Silvermind

उत्तर

7

के बाद से LINQ संस्थाओं Convert.ToInt32 का समर्थन नहीं करता, तो आपको पहले LINQ बाहर int को पार्स करने के लिए की जरूरत है:

TaxiEntities db = new TaxiEntities(); 
int password = int.Parse(txtPassWord.Text); 

bool IsUserPassCorrected = db.tblOperators 
      .Any(item => item.UserName.ToLower() == txtUserName.Text.ToLower() 
         && item.Password == password); 
संबंधित मुद्दे