我尝试了上面提供的代码。您可以使用以下代码筛选和排序列表:
public class Feature
{
public int Id { get; set; }
public string ColumnValues { get; set; }
}
var features = new List<Feature> { new Feature {Id=1,ColumnValues="carrot" } ,
new Feature {Id=1,ColumnValues="dirt" },
new Feature {Id=1,ColumnValues="banana" }, new Feature {Id=1,ColumnValues="apple" }
};
string strToComapre = "c";
int lenOfString = 1;
var query=(from feature in features
where String.CompareOrdinal(feature.ColumnValues, 0, strToComapre, 0, lenOfString) <= 0
select feature).OrderBy(x => x.ColumnValues);
这将返回值apple、banana和carrot。我将columnvalues字段作为具有要比较的字符串的字段。因为原始字符串中可以有任意数量的字符,所以这里的顺序比较是正确的方法。
在这个例子中,我取了变量
勒诺夫斯特朗
但是你可以根据字符串的长度来定义它,因为这里的长度是“1”(我们比较的是“c”),所以我把长度设置为“1”。