Ich probiere die neueste Version von StructureMap aus, um mehr über IoC-Container und dergleichen zu erfahren. Als mein erster Test habe ich die folgende Klasse:StructureMap Exception Code 205 Fehlende angeforderte Instanzeigenschaft
public class Hospital
{
private Person Person { get; set; }
private int Level { get; set; }
public Hospital(Person employee, int level)
{
Person = employee;
Level = level;
}
public void ShowId()
{
Console.WriteLine(this.Level);
this.Person.Identify();
}
}
ich dann StructureMap wie folgt verwenden:
static void Main()
{
ObjectFactory.Configure(x =>
{
x.For<Person>().Use<Doctor>();
x.ForConcreteType<Hospital>().Configure.Ctor<int>().Equals(23);
});
var h = ObjectFactory.GetInstance<Hospital>();
h.ShowId();
}
So ein Doktor Objekt als erste Konstruktor param zum Krankenhaus ich vorbei, und ich bin der level
param bis 23. Wenn ich den obigen Code ausführen ich zu setzen versuchen:
Unbehandelte Ausnahme: StructureMap.StructureMapException: StructureMap Ausnahmecode: 205 angefordert Fehlende Instanz Eigenschaft "Ebene" für InstanceKey "5f8c4b74-a398-43f7- 91d5-cfefcdf120cf"
So sieht es aus wie ich bin nicht die level
param überhaupt einstellen. Kann mir jemand in die richtige Richtung zeigen - wie setze ich den level
Parameter im Konstruktor?
Prost. Jas.
Großen, die gearbeitet :) –
Ich hatte ein ähnliches Problem, hier eine weitere mögliche Lösung für die gleiche Fehlermeldung: http: // Stackoverflow. com/questions/6998346/telling-structuremap-to-use-another-Konstruktor – Jaider