小编CRG*_*CRG的帖子

将Autofac与域事件一起使用

我正在尝试将域事件引入项目中.这个概念在Udi Dahan的帖子中描述 - http://www.udidahan.com/2009/06/14/domain-events-salvation/

这是域事件代码

public interface IDomainEvent { }

public interface IHandleDomainEvents<T> where T : IDomainEvent
{
     void Handle(T args); 
}

public interface IEventDispatcher
{
    void Dispatch<TEvent>(TEvent eventToDispatch) where TEvent : IDomainEvent;
}

public static class DomainEvents
{
    public static IEventDispatcher Dispatcher { get; set; }

    public static void Raise<TEvent>(TEvent eventToRaise) where TEvent : IDomainEvent
    {
        Dispatcher.Dispatch(eventToRaise);
    }
}
Run Code Online (Sandbox Code Playgroud)

最重要的部分是IEventDispatcher实现,它将域事件与引发事件时发生的任何事件分离开来.诀窍是通过容器连接这个耦合.这是我的尝试

注册所有域事件处理程序的代码....

        var asm = Assembly.GetExecutingAssembly();
        var handlerType = typeof(IHandleDomainEvents<>);

        builder.RegisterAssemblyTypes(asm)
            .Where(t => handlerType.IsAssignableFrom(t)
                        && t.IsClass
                        && !t.IsAbstract)
            .AsClosedTypesOf(handlerType)
            .InstancePerLifetimeScope(); …
Run Code Online (Sandbox Code Playgroud)

autofac domain-events

14
推荐指数
1
解决办法
3324
查看次数

使用并排布局显示编辑器标签和编辑器字段需要什么css?

所以默认的MVC应用程序有以下css(在Site.css中) -

/* Styles for editor and display helpers
----------------------------------------------------------*/
.display-label,
.editor-label
{
    margin: 1em 0 0 0;
}

.display-field,
.editor-field
{
    margin:0.5em 0 0 0;
}

.text-box
{
    width: 30em;
}

.text-box.multi-line
{
    height: 6.5em;
}

.tri-state
{
    width: 6em;
}
Run Code Online (Sandbox Code Playgroud)

需要进行哪些更改?谢谢

css asp.net-mvc

7
推荐指数
1
解决办法
1万
查看次数

使用Autofac注册HttpContext.User

我想在Autofac中执行以下操作,但不确定如何操作?

这是你在StructureMap中的方法

ForRequestedType<IPrincipal>()
  .CacheBy(InstanceScope.Hybrid)
  .TheDefault.Is.ConstructedBy(ctx => HttpContext.Current.User);
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc autofac

3
推荐指数
1
解决办法
2440
查看次数

标签 统计

asp.net-mvc ×2

autofac ×2

css ×1

domain-events ×1