private static IEnumerable <MetaConfigurationSourceInstanceElement> GetMatchedInstances(MetaConfigurationSourceInstanceElementCollection instances, InstanceMode mode) { List <MetaConfigurationSourceInstanceElement> modeMatched = new List <MetaConfigurationSourceInstanceElement>(instances.FilterByInstanceMode(mode)); List <MetaConfigurationSourceInstanceElement> result = null; if (mode == InstanceMode.Web) { //匹配站点名称 List <MetaConfigurationSourceInstanceElement> matchedItems = modeMatched.FindAll(i => string.Compare(i.Name, HostingEnvironment.SiteName, true) == 0); if (matchedItems.Count == 0) { //如果站点名称没有匹配到,则添加默认项 if (modeMatched.Count > 0) { matchedItems.Add(modeMatched[0]); } } result = new List <MetaConfigurationSourceInstanceElement>(matchedItems); } else { result = modeMatched; } return(result); }