首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何按名称订购SiteCollection

如何按名称订购SiteCollection
EN

Stack Overflow用户
提问于 2015-08-18 13:50:17
回答 2查看 69关注 0票数 2

我想点一个这样的名字的Microsoft.Web.Administration.SiteCollection:

代码语言:javascript
复制
ServerManager iisManager = ServerManager.OpenRemote(Vm.CurrentServeur);
SiteCollection websites = iisManager.Sites.OrderBy(x => x.Name);

但我得到了以下错误:

不能隐式地将“System.Linq.IOrderedEnumerable”转换为“Microsoft.Web.Administration.SiteCollection”

我怎样才能订购SiteCollection?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-18 13:55:37

因为SiteCollection没有构造函数,所以不能创建它。您可以使用它的方法ClearAdd

代码语言:javascript
复制
SiteCollection websites = iisManager.Sites;
List<Site> orderedSites = websites.OrderBy(x => x.Name).ToList();
websites.Clear();
foreach(Site s in orderedSites)
    websites.Add(s);

这将修改原始的SiteCollection。如果您根本不需要它,您可以使用IEnumerable<Site>或直接使用列表:

代码语言:javascript
复制
List<Site> webSites = iisManager.Sites.OrderBy(x => x.Name).ToList<Site>();
票数 2
EN

Stack Overflow用户

发布于 2015-08-18 13:54:39

我建议你加入ToList

代码语言:javascript
复制
iisManager.Sites.OrderBy(x => x.Name).ToList(); 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32074329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档