क्या एंटिटी फ्रेमवर्क 4 का उपयोग कर एकल कॉलम की पूरी सामग्री प्राप्त करने का कोई तरीका है? एक ही इस एसक्यूएल क्वेरी की तरह:इकाई फ्रेमवर्क के साथ एक कॉलम का चयन कैसे करें?
SELECT Name FROM MyTable WHERE UserId = 1;
क्या एंटिटी फ्रेमवर्क 4 का उपयोग कर एकल कॉलम की पूरी सामग्री प्राप्त करने का कोई तरीका है? एक ही इस एसक्यूएल क्वेरी की तरह:इकाई फ्रेमवर्क के साथ एक कॉलम का चयन कैसे करें?
SELECT Name FROM MyTable WHERE UserId = 1;
आप ऐसा करने के लिए LINQ के .Select()
का उपयोग कर सकते हैं। आपके मामले में यह कुछ इस तरह जाना होगा:
yourDbContext.MyTable.Where(u => u.UserId == 1).Select(u => u.Name);
आप LINQ select
खंड का उपयोग करें और संपत्ति है कि आपके नाम स्तंभ से संबंधित संदर्भ सकता है।
LINQ आपकी क्वेरी का उपयोग करते हुए कुछ इस तरह दिखना चाहिए:
public User GetUser(int userID){
return
(
from p in "MyTable" //(Your Entity Model)
where p.UserID == userID
select p.Name
).SingleOrDefault();
}
बेशक
यह आप में एक ADO.Net इकाई मॉडल की आवश्यकता करने के लिए अपने उपाय।
मैं इकाई पर एक पूरा noob हूँ लेकिन इस
var name = yourDbContext.MyTable.Find(1).Name;
कैसे मैं सिद्धांत रूप में यह करना होगा है ... अगर यह एक प्राथमिक कुंजी है।
- या -
var name = yourDbContext.MyTable.SingleOrDefault(mytable => mytable.UserId == 1).Name;
- या -
पूरे स्तंभ के लिए:
var names = yourDbContext.MyTable
.Where(mytable => mytable.UserId == 1)
.Select(column => column.Name); //You can '.ToList();' this....
लेकिन "ओह गीज़ रिक, मुझे क्या मालूम ..."
हाय, मुझे त्रुटि मिली है 'सिस्टम को स्पष्ट रूप से रूपांतरित नहीं कर सकता' System.Linq.IQueryable 'to' string'' 'db.Offices.Where (o => o.Offic eId == emp.OfficeId)। चयन करें (o => o.DepartmentId) 'कोई विचार? –
guitarlass
@guitarlass यदि आप अपनी क्वेरी से एक परिणाम प्राप्त करना चाहते हैं तो आपको कुछ ऐसा करने की आवश्यकता होगी: 'string s = db.Offices.Where (o => o.OfficeId == emp.OfficeId)। चयन करें (ओ => ओ। डिपार्टमेंट आईडी)। फर्स्टऑर्डफॉल्ट() ' –