मैं जानना चाहता हूं कि रिकॉर्ड डालने का कोई आसान तरीका है यदि यह तालिका में पहले से मौजूद नहीं है। मैं अभी भी अपने LINQ को SQL कौशल में बनाने की कोशिश कर रहा हूं।LINQ से SQL सम्मिलित-अगर-अस्तित्वहीन
यहां मुझे जो मिला है, लेकिन ऐसा लगता है कि एक आसान तरीका होना चाहिए।
public static TEntity InsertIfNotExists<TEntity>
(
DataContext db,
Table<TEntity> table,
Func<TEntity,bool> where,
TEntity record
)
where TEntity : class
{
TEntity existing = table.SingleOrDefault<TEntity>(where);
if (existing != null)
{
return existing;
}
else
{
table.InsertOnSubmit(record);
// Can't use table.Context.SubmitChanges()
// 'cause it's read-only
db.SubmitChanges();
}
return record;
}
e => e.BooleanProperty क्या है? संस्थाओं में एक बूलियन प्रॉपर्टी सदस्य नहीं है। मैंने इसे पहले कभी नहीं देखा है ... – core
हम्म, आप देखेंगे कि मेरे कोड में, मैंने कहा कि तालिका। कॉन्टैक्ट। सबमिट चेंज() काम नहीं कर रहा क्योंकि यह केवल-प्राप्त है। जाहिर है मैंने गलती की। – core
ई => ई। बोलेनप्रोपर्टी सिर्फ एक उदाहरण है। यह किसी भी अभिव्यक्ति के लिए खड़ा हो सकता है जो एक बूलियन मान देता है। –