मैं एक नई परियोजना पर काम कर रहा हूं जिसे Linq To SQL
का उपयोग करने की आवश्यकता है। मुझे एक सामान्य या पुन: प्रयोज्य Linq to SQL
कक्षा बनाने के लिए कहा गया है जिसका उपयोग संग्रहीत प्रक्रियाओं को निष्पादित करने के लिए किया जा सकता है।संग्रहित प्रक्रियाओं के लिए एसक्यूएल में पुन: प्रयोज्य लिंक बनाएं
ADO.Net
में मुझे पता था कि मैं कैसे चलाने की आवश्यकता सिर्फ मैं क्या निष्पादित करने के लिए चाहता था और मैं प्रत्येक क्वेरी के लिए विभिन्न तार प्रेषित कर सकता है की एक स्ट्रिंग में पारित करके यह करने के लिए:
SqlCommand cmd = new SqlCommand("myStoredProc", conn); // etc, etc
मैं के साथ संघर्ष कर रहा हूँ Linq To SQL
में कुछ ऐसा कैसे बनाएं, यदि यह भी संभव हो। मैंने .dbml
फ़ाइल बनाई है और इसमें मेरी संग्रहीत प्रक्रिया को जोड़ा है। नतीजतन, मैं नीचे दिए गए कोड का उपयोग कर परिणाम वापस कर सकते हैं:
public List<myResultsStoreProc> GetData(string connectName)
{
MyDataContext db = new MyDataContext (GetConnectionString(connectName));
var query = db.myResultsStoreProc();
return query.ToList();
}
कोड काम करता है लेकिन उन्होंने मुझे एक विधि है कि जो कुछ संग्रहीत प्रक्रिया मैं यह बता चलाने के लिए वापस आ जाएगी बनाना चाहते हैं। मैंने ऑनलाइन खोज की है और इसके बारे में सहयोगियों से बात की है और पुन: प्रयोज्य संग्रहीत प्रो वर्ग बनाने के लिए एक रास्ता खोजने में असफल रहा है।
तो संग्रहीत प्रोसेस निष्पादित करने के लिए पुन: प्रयोज्य Linq to SQL
कक्षा बनाने का कोई तरीका है?
संपादित करें:
मैं क्या देख रहा हूँ अगर वहाँ निम्नलिखित की तरह कुछ करने के लिए एक रास्ता है है?
public List<string> GetData(string connectName, string procedureName)
{
MyDataContext db = new MyDataContext (GetConnectionString(connectName));
var query = db.procedureName();
return query.ToList();
}
मैं Linq To Sql
पर MSDN docs की समीक्षा की है और इन IEnumerable
में मेज दिखा रहे हैं:
IEnumerable<Customer> results = db.ExecuteQuery<Customer>(
@"select c1.custid as CustomerID, c2.custName as ContactName
from customer1 as c1, customer2 as c2
where c1.custid = c2.custid"
);
मैं कुछ बहुत सामान्य है, जहां मैं संग्रहीत की एक स्ट्रिंग मूल्य भी भेज सकता रहा हूँ proc कि मैं निष्पादित करना चाहता हूँ। यदि यह संभव नहीं है, तो क्या कोई दस्तावेज है कि इसे इस तरह क्यों नहीं किया जा सकता है? मैं साबित करने के लिए कारण है कि हम Linq To Sql
आप संग्रहित प्रक्रियाओं है कि आप .dbml फ़ाइल में मॉडलिंग की है नहीं हो सकता है पर अमल करने की जरूरत है? और क्या आप उन संस्थाओं को वापस करना चाहते हैं जो आपके .dbml में मैप किए गए हैं? – CodingGorilla
उन्हें सबसे अधिक संभावना है .dbml में मैप किया जाएगा, लेकिन मुझे लगता है कि ऐसा कोई मामला हो सकता है जहां यह – Taryn
नहीं था। LINQ से SQL का उपयोग नहीं किया जाना चाहिए। आप सिस्टम के खिलाफ काम कर रहे हैं। काम करने का प्रयास करें क्योंकि इसका इस्तेमाल किया जाना है। – usr