मैं मैं पहले से ही NuGet का उपयोग कर लिया है ASP.NET MVC3 के लिए StructureMap विन्यास के लिए कैसे लगाने की कोशिश कर रहा हूँ और मुझे लगता है कि यह StructuremapMVC के रूप में नामित एक सीएस फ़ाइल के साथ App_Start फ़ोल्डर बनाता नोटिस के माध्यम से StructureMap और MVC3 कोशिश, तो मैं जाँच यह और नोटिस एक ही कोड लेकिन सरलीकृत कि Global.asax पर रखा App_Start खंड पर मैन्युअल रूप से लिखा जाएगा है कि ...पहले NuGet
यह आईओसी कक्षा से मेरे कोड है
public static class IoC
{
public static IContainer Initialize()
{
ObjectFactory.Initialize(x =>
{
x.Scan(scan =>
{
scan.TheCallingAssembly();
scan.WithDefaultConventions();
scan.AddAllTypesOf<IController>();
});
x.For<OpcionDB>().Use(() => new DatabaseFactory().Get());
});
return ObjectFactory.Container;
}
}
मेरा प्रश्न है मैं क्यों मिलता एक अपवाद जब मैं अपने नियंत्रकों पर कुछ आईओसी इंजेक्ट करता हूं (मैं इस पैटर्न का उपयोग करता हूं: Entity Framework 4 CTP 4/CTP 5 Generic Repository Pattern and Unit Testable):
private readonly IAsambleaRepository _aRep;
private readonly IUnitOfWork _uOw;
public AsambleaController(IAsambleaRepository aRep, IUnitOfWork uOw)
{
_aRep = aRep;
this._uOw = uOw;
}
public ActionResult List(string period)
{
var rs = _aRep.ByPeriodo(period).ToList<Asamblea>();
return View();
}
अपवाद पता चला:
Exception Details: System.MissingMethodException: No parameterless constructor defined for this object.
+1: इससे मेरी मदद मिली। धन्यवाद। –
स्ट्रक्चर मैप का उपयोग करने के अपने सभी वर्षों में मैंने कभी यह नहीं देखा, मुझे लगता है कि मैं इस कोशिश को रोकने के लिए जा रहा हूं। मुझे नहीं लगता कि मैं कभी भी स्ट्रक्चर मैप को बबल अप नहीं करना चाहता हूं। –