J'essaie d'injecter une chaîne dans le registre structuremap au moment de l'exécution. Je l'ai fait avec succès avec une chaîne statique. comme celui-ciStructuremap Valeurs dynamiques du registre par défaut
For<TestDAL>().Use<TestDAL>().Ctor<string>("connectionString").Is("randomStringData");
mais quand je suis en train de faire la chaîne dynamique à l'exécution je ne suis pas en mesure de comprendre comment l'envoyer, je l'ai essayé HttpContext et session, mais ils sont toujours vides comme dans l'exemple ci-dessous:
HttpContext.Current.GetOwinContext().Environment.TryGetValue("dynamicString", out object dynString);
For<TestDAL>().Use<TestDAL>().Ctor<string>("connectionString").Is(dynString);
S'il vous plaît quelqu'un a anyidea sur la façon de faire cela?
merci pour votre aide, mais cette solution est impossible puisque l'expression lambda avec un corps de déclaration ne peut pas être converti en un arbre d'expression. et cela ne fonctionnera pas – wandos
Utilisez la surcharge ** other ** qui vous permet de fournir une description sous forme de chaîne et un Func au lieu de l'expression. –
Pouvez-vous s'il vous plaît me donner un exemple sur la façon de – wandos