मुझे LINQ से SQL में डेटाबेस की दूसरी यात्रा करने के बिना के बिना तालिका से प्राथमिक कुंजी आईडी संख्या कैसे प्राप्त होगी?दूसरी यात्रा के बिना तालिका से प्राथमिक कुंजी कैसे प्राप्त करें?
अभी, मैं एक टेबल पर डेटा जमा करता हूं, और यह पता लगाने के लिए एक और यात्रा करता हूं कि नए क्षेत्र को कौन सा आईडी असाइन किया गया था (एक ऑटो वृद्धि आईडी फ़ील्ड में)। मैं LINQ से SQL में ऐसा करना चाहता हूं और कच्चे SQL में नहीं (अब मैं रॉ एसक्यूएल का उपयोग नहीं करता)।
इसके अलावा, मेरे प्रश्न का दूसरा भाग यह है: मैं हमेशा ऑनलाइन उपयोगकर्ता की पहचान जानने के लिए सावधान रहना चाहता हूं क्योंकि मैं अपनी आईडी का उपयोग करके विभिन्न आईडी में अपनी जानकारी को GUID या उपयोगकर्ता नाम का उपयोग करने के विपरीत कहूंगा, जो सभी लंबे तार हैं। मैं ऐसा इसलिए करता हूं क्योंकि मुझे लगता है कि SQL सर्वर एक संख्यात्मक तुलना कर रहा है (?) उपयोगकर्ता नाम (स्ट्रिंग) या यहां तक कि एक guid (बहुत लंबी स्ट्रिंग) की तुलना में अधिक कुशल है। मेरे प्रश्न है, क्या मैं उससे ज्यादा चिंतित हूं? उपयोगकर्ता स्थिति (int32) को हमेशा सत्र स्थिति में रखने के अंतर का अंतर है?
@RedFilter पहला सवाल के लिए कुछ रोचक/वादा किया जाता है प्रदान की, क्योंकि मैं, इस स्तर के लिए उन्हें कोशिश करने में असमर्थ पर हूँ किसी को भी जानता है या इन परिवर्तनों है कि वह अपने जवाब की टिप्पणी अनुभाग में सिफारिश की पुष्टि कर सकते हैं तो क्या होगा?
मुझे नहीं पता है कि एसक्यूएल लैंग में एसक्यूएल प्रक्रियाओं लिखने के लिए। लेकिन अगर मैं बहुत यकीन कर सकता हूं कि linq अपने .dbml फ़ाइल डिजाइनर में एसक्यूएल संग्रहीत प्रक्रियाओं को मैप कर सकता है, तो यह वापसी मान प्राप्त करने में सक्षम होना चाहिए, शायद तभी आप टी-एसक्यूएल का उपयोग कर पूरे इंसर्ट करते हैं ... अन्यथा मैं अनिश्चित हूं भी। –
मुझे लगता है कि InsertOn सबमिट या सबमिट की वापसी मूल्य के रूप में सबमिट करें जो हमारी आवश्यकताओं के लिए प्रासंगिक है। –