本文整理汇总了C#中BehaviorGraph.AllAssemblies方法的典型用法代码示例。如果您正苦于以下问题:C# BehaviorGraph.AllAssemblies方法的具体用法?C# BehaviorGraph.AllAssemblies怎么用?C# BehaviorGraph.AllAssemblies使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BehaviorGraph
的用法示例。
在下文中一共展示了BehaviorGraph.AllAssemblies方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Build
public static Task<ConnegGraph> Build(BehaviorGraph behaviorGraph)
{
var graph = new ConnegGraph();
var writers = TypeRepository.FindTypes(behaviorGraph.AllAssemblies(),
TypeClassification.Concretes | TypeClassification.Closed, x => x.Closes(typeof (IMediaWriter<>)))
.ContinueWith(t => graph.Writers.AddRange(t.Result));
var readers = TypeRepository.FindTypes(behaviorGraph.AllAssemblies(),
TypeClassification.Concretes | TypeClassification.Closed, x => x.Closes(typeof(IReader<>)))
.ContinueWith(t => graph.Readers.AddRange(t.Result));
return Task.WhenAll(writers, readers).ContinueWith(t => graph);
}
示例2: BuildChains
public Task<BehaviorChain[]> BuildChains(BehaviorGraph graph, IPerfTimer timer)
{
var types = TypeRepository.FindTypes(graph.AllAssemblies(), TypeClassification.Concretes,
type => type.CanBeCastTo<Topic>());
return
types.ContinueWith(
t => { return t.Result.Select(x => new SseTopicChain(x).As<BehaviorChain>()).ToArray(); });
}
示例3: Compile
public static Task Compile(BehaviorGraph graph, IPerfTimer timer, FubuRegistry registry)
{
return TypeRepository.FindTypes(graph.AllAssemblies(),
TypeClassification.Concretes | TypeClassification.Closed, IsValidationRegistration)
.ContinueWith(t =>
{
t.Result.Distinct()
.Each(type => registry.Services.For(typeof(IValidationRegistration)).Add(type));
});
}
示例4: Compile
public static Task Compile(BehaviorGraph graph, IPerfTimer timer)
{
return TypeRepository.FindTypes(graph.AllAssemblies(),
TypeClassification.Concretes | TypeClassification.Closed, IsAccessorRule)
.ContinueWith(t =>
{
var rules = new AccessorRules();
t.Result.Distinct()
.Select(x => Activator.CreateInstance(x).As<IAccessorRulesRegistration>())
.Each(x => x.AddRules(rules));
graph.Settings.Replace(rules);
});
}