मेरे पास Broker
, Instrument
और BrokerInstrument
नामक तीन वर्ग हैं।किसी आइटम को किसी ISET <T> में कैसे जोड़ें?
using Iesi.Collections.Generic;
public class Broker : ActiveDefaultEntity
{
public virtual string Name { get; set; }
public virtual ISet<BrokerInstrument> BrokerInstruments { get; set; }
}
public class Instrument : Entity
{
public virtual string Name { get; set; }
public virtual string Symbol {get; set;}
public virtual ISet<BrokerInstrument> BrokerInstruments { get; set; }
public virtual bool IsActive { get; set; }
}
public class BrokerInstrument : Entity
{
public virtual Broker Broker { get; set; }
public virtual Instrument Instrument { get; set; }
public virtual decimal MinIncrement { get; set; }
}
अगर मैं तीन नई वस्तुओं (प्रत्येक प्रकार में से एक) उन वर्गों कैसे मैं उन्हें संबद्ध करने के लिए का उपयोग कर बनाने के? उदाहरण के लिए:
Instrument instrument = new Instrument {
Name = "Test Instrument",
Symbol = "Test",
IsActive = true
};
Broker broker = new Broker {
Name = "My Test Broker",
IsActive = true,
IsDefault = false
};
BrokerInstrument brokerInstrument = new BrokerInstrument {
Broker = broker,
Instrument = instrument,
MinIncrement = 0.01M
};
कैसे instrument
"पता" है एक नया brokerInstrument
अब यह साथ जुड़ा हुआ है कि? अगर अब मैं if (instrument.Brokerinstruments == null)
चलाता हूं तो मुझे true
मिलता है। क्या मुझे वस्तुओं को BrokerInstrument
दोनों घोषणाओं में जोड़ना है और फिर वापस जाएं और इसे instrument.BrokerInstruments ISet
पर जोड़ें?
यदि मैं कोशिश करता हूं और करता हूं: instrument.BrokerInstruments.Add(instrument)
मुझे कोई त्रुटि मिलती है क्योंकि इसकी शून्य है। उलझन में। मैं क्या खो रहा हूँ? इस तरह के रिश्तों को मॉडल करने का सबसे अच्छा तरीका क्या है? इन वस्तुओं को NHibernate का उपयोग कर डेटाबेस में जारी रखा जाएगा।
वादा करता है हालांकि जब मैं यूनिट परीक्षण चलाता हूं तो एनएचबीर्नेट की शिकायत 'टेस्टफिक्स्चर विफल' के साथ शिकायत करती है: एनएचबीर्नेट.प्रोपर्टी नॉटफाउंड अपवाद: कक्षा 'MooDB.Domain.Instrument' में संपत्ति 'ब्रोकर इंस्ट्रूमेंट्स' के लिए एक सेटटर नहीं मिला, क्या मुझे एनएचबेर्नेट में कुछ विशेष करने की ज़रूरत है अभी व? यह काफी जटिल लगता है, लेकिन मैं बस इतना करना चाहता हूं कि एक मॉडल मॉडल में एक-दूसरे के रिश्ते मॉडल हों और उसके बाद NHBernate डीबी में परिवर्तन जारी रहे। –
आह, मैंने NHibernate बिट को याद किया। मैं तदनुसार संशोधित करूँगा ... हो गया। –
लगभग! 'संरक्षित सेट' लाइन पर मुझे त्रुटि मिल रही है: 'पूरी तरह से प्रकार को परिवर्तित नहीं कर सकता' System.Collections.Generic.IEnumerable 'to' System.Collections।Generic.ISet '। एक स्पष्ट रूपांतरण मौजूद है (क्या आप एक कास्ट गायब हैं?) ' –