LINQ

2011-12-18 15 views
5

का उपयोग कर एक अद्वितीय आईडी कॉलम का अधिकतम मूल्य कैसे प्राप्त करें LINQ का उपयोग करके इसे सरल तरीके से मैं कैसे लिख सकता हूं?LINQ

SELECT  MAX(Game_id) AS MaxValue 
FROM   Dim_Game 

उत्तर

5

प्रयास करें context.Dim_Games.Max(g => g.Game_id);

+0

मैं? ' 'Project.Models.Dim_Game' 'Max'' –

+0

के लिए एक परिभाषा क्या एफई इकाई कंटेनर कि डेटाबेस में' Dim_Game' तालिका से मेल खाती है का नाम है शामिल नहीं है – dasblinkenlight

+0

ओह, क्या क्या मैं सोच रहा था? .. – dasblinkenlight

0

आप भी ऐसे ही एक संग्रहीत प्रक्रिया का उपयोग कर सकते हैं:,

select ident_current('table_name') 
0

आप कोड निम्न का उपयोग कर सकते हैं अगर पहचान वेतन वृद्धि

Convert.ToInt32(_entities.Database.SqlQuery("SELECT IDENT_CURRENT('table') + IDENT_INCR('table')", new object[0]).FirstOrDefault())
पर है

1

यदि आपके कॉलम नल और परिणाम नहीं की आप क्वेरी खाली है, तो आपको त्रुटि

प्राप्त होगा "मान प्रकार के लिए डाली 'System.Int32' विफल हो गया क्योंकि materialized मूल्य रिक्त है। या तो परिणाम प्रकार के सामान्य पैरामीटर या क्वेरी

एक नल प्रकार उपयोग करना चाहिए। "त्रुटि आप स्तंभ डाली चाहिए से बचने के लिए नल और परिणाम के लिए 0.

int max=(surveys.Max(g =>(int?)g.SurveyID) ?? 0); 

साथ सम्मिलित में अधिक विवरण देखें The cast to value type 'Int32' failed because the materialized value is null

संबंधित मुद्दे