当前位置: 首页>>代码示例>>C#>>正文


C# Cache.Has方法代码示例

本文整理汇总了C#中Cache.Has方法的典型用法代码示例。如果您正苦于以下问题:C# Cache.Has方法的具体用法?C# Cache.Has怎么用?C# Cache.Has使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Cache的用法示例。


在下文中一共展示了Cache.Has方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Gather

        public BehaviorDetailsModel Gather(IDebugReport report)
        {
            // TODO -- come back and clean this up. Just getting it up and running for a demo
            BehaviorDetailsModel root = null;
            var behaviors = new Cache<Type, BehaviorDetailsModel>(t =>
                                                                  	{
                                                                  		var model = new BehaviorDetailsModel {BehaviorType = t};
                                                                        if(root == null)
                                                                        {
                                                                            root = model;
                                                                        }

                                                                  		return model;
                                                                  	});
            Type lastBehaviorType = null;
            report
                .Steps
                .Each(s =>
                      	{
                      		var behaviorType = s.Behavior.BehaviorType;
                      	    var isSameBehavior = behaviorType == lastBehaviorType;
                      	    var isBehaviorFinish = s.Details.GetType().CanBeCastTo<BehaviorFinish>();

                            if (behaviors.Has(behaviorType) && (!isSameBehavior || isBehaviorFinish))
                            {
                                behaviors[behaviorType].AddAfter(s.Details);
                            }
                            else
                            {
                                behaviors[behaviorType].AddBefore(s.Details);
                            }

                            var currentBehavior = behaviors[behaviorType];
                      	    currentBehavior.Id = s.Behavior.BehaviorId;

                            if (lastBehaviorType != null && !isSameBehavior && isBehaviorFinish)
                            {
                                var lastBehavior = behaviors[lastBehaviorType];
                                if(!lastBehavior.Equals(root))
                                {
                                    currentBehavior.Inner = lastBehavior;
                                }
                            }

                            lastBehaviorType = behaviorType;
                      	});

            return root;
        }
开发者ID:jemacom,项目名称:fubumvc,代码行数:49,代码来源:get_Id_handler.cs

示例2: addRow

 private void addRow(TableRowTag row, Uri uri, Cache<Uri, TransportNode> peers)
 {
     row.Cell(uri.ToString());
     if (peers.Has(uri))
     {
         var peer = peers[uri];
         row.Cell(peer.Id);
         row.Cell(peer.ControlChannel.ToString());
     }
     else
     {
         row.Cell("None");
         row.Cell();
     }
 }
开发者ID:RyanHauert,项目名称:FubuTransportation,代码行数:15,代码来源:TasksFubuDiagnostics.cs

示例3: Gather

        public BehaviorDetailsModel Gather(IDebugReport report)
        {
            // TODO -- come back and clean this up. Just getting it up and running for a demo
            BehaviorDetailsModel root = null;
            var behaviors = new Cache<Type, BehaviorDetailsModel>(t =>
                                                                  	{
                                                                  		var model = new BehaviorDetailsModel {BehaviorType = t};
                                                                        if(root == null)
                                                                        {
                                                                            root = model;
                                                                        }

                                                                  		return model;
                                                                  	});
            Type lastBehavior = null;
            report
                .Steps
                .Each(s =>
                      	{
                      		var behaviorType = s.Behavior.BehaviorType;
                            if(behaviors.Has(behaviorType) && behaviorType != lastBehavior)
                            {
                                behaviors[behaviorType].AddAfter(s.Details);
                            }
                            else
                            {
                                behaviors[behaviorType].AddBefore(s.Details);
                            }

                            if(lastBehavior != null && behaviorType != lastBehavior)
                            {
                                var lastModel = behaviors[lastBehavior];
                                if(!lastModel.Equals(root))
                                {
                                    behaviors[behaviorType].Inner = lastModel;
                                }
                            }

                            lastBehavior = behaviorType;
                      	});

            return root;
        }
开发者ID:pedroreys,项目名称:fubumvc,代码行数:43,代码来源:get_Id_handler.cs


注:本文中的Cache.Has方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。