我已经StructureMap多次使用MVC2/3而没有任何顾虑,但我想在MVC4中处理IoC是不同的.当我用于StructureMap处理MVC4中的IoC时,我得到以下异常:
为什么?我没有在谷歌找到任何正确的结果,除了这个:IoC不工作在MVC4 这些是我的IoC类:
public static class IoC {
public static IContainer Initialize() {
ObjectFactory.Initialize(x =>
{
x.Scan(scan =>
{
//scan.Assembly("DLL.Core");
scan.Assembly("DLL.CMS");
scan.TheCallingAssembly();
scan.WithDefaultConventions();
});
x.For<IDbContext>().Use<ModelEntities>();
x.For(typeof(IRepository<>)).Use(typeof(Repository<>));
x.For<IHttpControllerActivator>();
x.For<IController>();
});
return ObjectFactory.Container;
}
Run Code Online (Sandbox Code Playgroud)
而SmDependencyResolver是:
public class SmDependencyResolver : IDependencyResolver
{
private readonly IContainer _container;
public SmDependencyResolver(IContainer container)
{
_container = container;
}
public object GetService(Type serviceType)
{
if (serviceType == null) return null;
try
{
return serviceType.IsAbstract || serviceType.IsInterface
? _container.TryGetInstance(serviceType)
: _container.GetInstance(serviceType);
}
catch …Run Code Online (Sandbox Code Playgroud) structuremap asp.net-mvc inversion-of-control asp.net-mvc-3 asp.net-mvc-4
我是redis中的新手,现在我想在一个数据库中获取所有密钥而不知道密钥或密钥模式.谷歌搜索后,我发现了一个关于我的问题的sodu代码,但我在这段代码中没有关键模式或数据字段:
var connection = ConnectionMultiplexer.Connect(new ConfigurationOptions
{
EndPoints = { { DemoSettings.CustomerRedisCache.Url, DemoSettings.CustomerRedisCache.Port } },
Password = DemoSettings.CustomerRedisCache.Password
});
var server = connection.GetServer(host: DemoSettings.CustomerRedisCache.Url,
port: DemoSettings.CustomerRedisCache.Port);
var cadena = "cust:" + data.SearchString.Replace(' ', ':')+"*";
var valores = server.Keys(pattern: cadena);
Run Code Online (Sandbox Code Playgroud)
谢谢你的回复