Je suis en train de construire ma première application MVC 3 en utilisant EF Code First, SQL CE et Ninject. J’ai beaucoup lu sur l’utilisation des référentiels, des unités de travail et des couches de service. Je pense avoir réglé les bases et effectué ma propre implémentation. Ceci est ma configuration actuelle: Entités public class […]
Je veux laisser Ninject résoudre une instance de T basée sur une valeur d’entrée enum spécifique. J’ai lu sur l’extension d’usine de Ninject, mais je n’ai trouvé aucun exemple montrant que l’usine résolve une classe spécifique basée sur un enum. Chaque classe dérive d’une classe de base et cette classe dérivée a plusieurs interfaces différentes […]
Désolé d’avance pour la longue question, c’est long parce que j’ai creusé toute la journée. Le problème général: J’ai une application ASP.Net MVC2 avec les projets suivants: MyApp.Web, MyApp.Services, MyApp.Data. Nous codons pour les interfaces et utilisons Ninject 2 pour DI / IoC. Cependant, j’en ai marre de taper (et d’oublier de taper): Bind.To; Donc, […]
Eh bien, cette question est assez simplement énoncée par le titre. Pour une factory variable locale: var factory = Fluently.Configure() … Est-ce que ces deux lignes sont équivalentes: Bind().ToConstant(factory).InSingletonScope(); et: Bind().ToConstant(factory);
J’ai une interface avec quelques implémentations concrètes différentes. J’essaie de donner à Ninject une valeur par défaut et de n’utiliser l’autre implémentation que si un nom correspond. Par exemple, j’ai les liaisons suivantes. Bind().To() Bind().To().Named(“55abd8b8-097f-4e1c-8d32-95cc97910604”); Ce que j’aimerais, si la section nommée ne correspond pas, utiliser l’implémentation DefaultSomething. Lorsque je passe dans le guid explicitement […]
Je suis en train de faire une Empty Web API in Visual Studio 2013 Framework 4.5. De toute évidence, NinjectWebCommon.cs n’apparaît pas. J’ai installé via Nuget, Ninject, Ninject.Web.Common, Ninject.MVC5, Ninject.Web.Common.WebHost, Ninject.Web.WebApi, Ninject.web.WebApi.WebHost mais NinjectWebCommon.cs n’apparaît toujours pas. Quoi d’autre dois-je installer? Puis-je append ce fichier manuellement? Merci
Comment combiner une injection de constructeur avec des parameters de constructeur “manuels”? c’est à dire. public class SomeObject { public SomeObject(IService service, float someValue) { } } Où IService doit être résolu / injecté par mon conteneur DI, et une valeur doit être spécifiée. Comment est-ce que je mélange les deux?
Voici la trace: An error has occurred. Type ‘ProjectName.Web.Api.Controllers.ContinentsController’ does not have a default constructor System.ArgumentException at System.Linq.Expressions.Expression.New(Type type) at System.Web.Http.Internal.TypeActivator.Create[TBase](Type instanceType) at System.Web.Http.Dispatcher.DefaultHttpControllerActivator.GetInstanceOrActivator(HttpRequestMessage request, Type controllerType, Func`1& activator) at System.Web.Http.Dispatcher.DefaultHttpControllerActivator.Create(HttpRequestMessage request, HttpControllerDescriptor controllerDescriptor, Type controllerType) Je trouve cela étrange car public class UsersController : ApiController { … } fonctionne parfaitement. J’ai comparé les 2 […]
Je suis assez nouveau dans les frameworks IoC, veuillez donc excuser la terminologie. Donc, ce que j’ai est un projet MVC avec les références Nininject MVC. J’ai d’autres bibliothèques de classe dans mon projet, par exemple une couche de domaine; j’aimerais pouvoir utiliser le framework Ninject, mais toutes mes liaisons se trouvent dans NinjectWebCommon.cs dans […]
C’est un phénomène étrange, et j’ai du mal à comprendre ce qui se passe ici. J’ai un projet Web api qui dans un contrôleur un appel à une certaine méthode appelle une fonction dans un service qui ressemble à ceci: public MyClassBase GetThing(Guid id) { if (cache.ContainsKey(id)) { return cache[id]; } else { var type […]