/// <summary>
 /// 如果服务不存在那么则绑定服务
 /// </summary>
 /// <typeparam name="TService">服务名</typeparam>
 /// <typeparam name="TAlias">服务别名</typeparam>
 /// <param name="container">服务容器</param>
 /// <param name="bindData">如果绑定失败则返回历史绑定对象</param>
 /// <returns>是否完成绑定</returns>
 public static bool SingletonIf <TService, TAlias>(this IContainer container, out IBindData bindData)
 {
     if (container.BindIf(container.Type2Service(typeof(TService)), typeof(TService), true, out bindData))
     {
         bindData.Alias(container.Type2Service(typeof(TAlias)));
         return(true);
     }
     return(false);
 }
Exemple #2
0
 public static IBindData SetAlias <TAlias>(this IBindData bindData)
 {
     bindData.Alias <TAlias>();
     return(bindData);
 }
Exemple #3
0
 /// <summary>
 /// 为服务设定一个别名
 /// </summary>
 /// <typeparam name="TAlias">别名</typeparam>
 /// <param name="bindData">绑定数据</param>
 /// <returns>服务绑定数据</returns>
 public static IBindData Alias <TAlias>(this IBindData bindData)
 {
     return(bindData.Alias(bindData.Container.Type2Service(typeof(TAlias))));
 }
Exemple #4
0
 public static IBindData SetAlias(this IBindData bindData, string alias)
 {
     bindData.Alias(alias);
     return(bindData);
 }