コード例 #1
0
 /// <summary>
 /// 解决服务时触发的回调
 /// </summary>
 /// <param name="bindData">绑定数据</param>
 /// <param name="action">解决事件</param>
 /// <returns>服务绑定数据</returns>
 public static IBindData OnResolving(this IBindData bindData, Action action)
 {
     Guard.Requires <ArgumentNullException>(action != null);
     return(bindData.OnResolving((_, instance) =>
     {
         action();
     }));
 }
コード例 #2
0
ファイル: ExtendBindData.cs プロジェクト: yomunsam/Core
 /// <inheritdoc cref="IBindData.OnResolving"/>
 public static IBindData OnResolving(this IBindData bindData, Action <object> closure)
 {
     Guard.Requires <ArgumentNullException>(closure != null);
     return(bindData.OnResolving((_, instance) =>
     {
         closure(instance);
     }));
 }
コード例 #3
0
 /// <summary>
 /// 解决服务时触发的回调
 /// </summary>
 /// <typeparam name="T">指定的类型</typeparam>
 /// <param name="bindData">绑定数据</param>
 /// <param name="closure">闭包</param>
 /// <returns>服务绑定数据</returns>
 public static IBindData OnResolving <T>(this IBindData bindData, Action <IBindData, T> closure)
 {
     Guard.Requires <ArgumentNullException>(closure != null);
     return(bindData.OnResolving((bind, instance) =>
     {
         if (instance is T)
         {
             closure(bind, (T)instance);
         }
     }));
 }