同じタイプのオブジェクトのリストが 2 つあります。
1 つのリストはシステム管理者から提供され、もう 1 つはページを閲覧しているユーザーから提供されます。
これらのリストは、ある時点で表示するためにマージする必要がposition
あり、リストがソートされる値に競合する値が含まれる可能性があります。
2 つのリストをマージし、位置に同じ値が見つかった場合に、より低い (したがってより良い) スポットを管理者リストに与える方法はありますか?
例
class info
{
int position;
string title;
}
List<info> adminInfo = new List<info>
{
new info() {position = 0, title = "adminOne"}
new info() {position = 4, title = "adminThree"}
new info() {position = 3, title = "adminTwo"}
}
List<info> userInfo = new List<info>
{
new info() {position = 0, title = "userOne"}
new info() {position = 3, title = "userTwo"}
}
List<info> PreferentiallySortedList(List<info> adminList, List<info> userList)
{
//Some kind of magic here
}
//Looping through PreferentiallySortedList and displaying
//the title of each item should return the following:
"adminOne"
"userOne"
"adminTwo"
"userTwo"
"adminThree"