【发布时间】:2011-11-24 04:32:06
【问题描述】:
我有几个网站并在主页上加载文章。我可以设置文章的排名以不同的顺序显示它们,但文章的各个站点上的排序可能不同。
我必须订购文章的代码为所有网站设置相同的顺序:
string officeLocation = "";
// office location could be either World, Europe, Africa, America, Asia, Pacific
var result = articles.Select(a => new
{
Title = a.Title,
Url = a[SPBuiltInFieldId.FileRef],
Byline = a[Constants.FieldNames.Byline],
ArticleDate = a[Constants.FieldNames.ArticleStartDate],
RankWorld = a[Constants.FieldNames.World],
RankEurope = a[Constants.FieldNames.RankEurope],
RankAfrica = a[Constants.FieldNames.RankAfrica],
RankAmerica = a[Constants.FieldNames.RankAmerica],
RankAsia = a[Constants.FieldNames.RankAsia],
RankPacific = a[Constants.FieldNames.RankPacific],
});
rptArticles.DataSource = result.OrderBy(a => a.RankWorld);
rptArticles.DataBind();
代码将所有排名设置为 RankWorld 为 (1-6)。
如果字符串officeLocation(传递给方法)是欧洲,那么我想通过a.RankEurope订购,如果officeLocation是亚洲订购a.RankAsia等等。
我怎样才能最好地实现这一点(.NET 3.5)?
提前致谢。
【问题讨论】: