C# 将随机生成的值链接到列表对象

C# 将随机生成的值链接到列表对象,c#,arrays,list,colors,static,C#,Arrays,List,Colors,Static,我使用下面的代码生成一个随机颜色 static Color[] colors = { Color.Red, Color.Green, Color.Yellow}; static Color GetRandomColor() { var random = new Random(); return colors[random.Next(colors.Length)]; } 现在我需要关联到一个用户列表: List<Utente> ListaUtente

我使用下面的代码生成一个随机颜色

static Color[] colors = { Color.Red, Color.Green, Color.Yellow}; 
static Color GetRandomColor()
{
    var random = new Random();
    return colors[random.Next(colors.Length)];
}
现在我需要关联到一个用户列表:

        List<Utente> ListaUtente = new List<Utente>();
        ListaUtente.Add(new Utente(22, "Pedro", 555444333, "pedro@gmail.com"));
        ListaUtente.Add(new Utente(22, "Lucas", 555444333, "lucas91@gmail.com"));
        ListaUtente.Add(new Utente(22, "Rodrigo", 555444333, "rodrigo00@gmail.com"));
        ListaUtente.Add(new Utente(22, "Gaspar", 555444333, "gaspar@gmail.com"));
        ListaUtente.Add(new Utente(22, "Assis", 555444333, "assis@gmail.com"));
List ListaUtente=new List();
添加(新的Utente(22,“Pedro”,555444333,”pedro@gmail.com"));
新增(新尤内特(22,“卢卡斯”,555444333,”lucas91@gmail.com"));
添加(新的Utente(22,“Rodrigo”,555444333,”rodrigo00@gmail.com"));
添加(新的Utente(22,“Gaspar”,555444333,”gaspar@gmail.com"));
添加(新的Utente(22,“Assis”,555444333,”assis@gmail.com"));
并将其显示在屏幕上,如:用户1-红色, 用户2-绿色等

最简单的方法是什么?我不知道如何连接这两段代码。为了给你一些背景知识,我正在做一个医院管理服务,我需要为每个用户分配一个应急颜色。

公共类人员
public class Person
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Color { get; set; }
}
public class Colours
{
    public string ColourName { get; set; }
}

class Program
{
    static void Main(string[] args)
    {

        List<Person> People = new List<Person>()
        {
           new Person { Id = 1, Name = "Dave" },
           new Person { Id = 2, Name = "Joe" },
           new Person { Id = 3, Name = "Stephen"},
           new Person { Id = 4, Name = "Sue" },
           new Person { Id = 5, Name = "Jemma" },
           new Person { Id = 6, Name = "Sharon" },
        };
        Dictionary<int, Colours> Colours = new Dictionary<int, Colours>()
        {
            { 1, new Colours { ColourName = "Color.Red" }},
            { 2, new Colours { ColourName = "Color.Green"}},
            { 3, new Colours { ColourName = "Color.Blue"}},
        };

        Random RandomNumber = new Random();

        int ListPostionToRemoveAt = RandomNumber.Next(1, People.Count);
        int RandomColourPostion = RandomNumber.Next(1, Colours.Count);

        Person p = People[ListPostionToRemoveAt];

        Colours ColourToAssign = Colours[RandomColourPostion] ;
        p.Color = ColourToAssign.ColourName;
        Console.Write("Persons Name: " + p.Name +" Persons Colour:"+ p.Color);
        Console.ReadLine();
    }
}
{ 公共int Id{get;set;} 公共字符串名称{get;set;} 公共字符串颜色{get;set;} } 公共级颜色 { 公共字符串colorName{get;set;} } 班级计划 { 静态void Main(字符串[]参数) { 列出人员=新列表() { 新人{Id=1,Name=“Dave”}, 新人{Id=2,Name=“Joe”}, 新人{Id=3,Name=“Stephen”}, 新人{Id=4,Name=“Sue”}, 新人{Id=5,Name=“Jemma”}, 新人{Id=6,Name=“Sharon”}, }; 字典颜色=新字典() { {1,新颜色{colorname=“Color.Red”}, {2,新颜色{colorname=“Color.Green”}, {3,新颜色{colorname=“Color.Blue”}, }; 随机数=新随机数(); int-listpositoremoveat=RandomNumber.Next(1,People.Count); int randomColorPosition=RandomNumber.Next(1,colors.Count); 人员p=人员[ListPostionToRemoveAt]; 颜色颜色分配=颜色[随机颜色位置]; p、 Color=colortoassign.colorName; 控制台。书写(“人员姓名:+p.姓名+”人员颜色:+p.颜色); Console.ReadLine(); } }
公共类人员
{
公共int Id{get;set;}
公共字符串名称{get;set;}
公共字符串颜色{get;set;}
}
公共级颜色
{
公共字符串colorName{get;set;}
}
班级计划
{
静态void Main(字符串[]参数)
{
列出人员=新列表()
{
新人{Id=1,Name=“Dave”},
新人{Id=2,Name=“Joe”},
新人{Id=3,Name=“Stephen”},
新人{Id=4,Name=“Sue”},
新人{Id=5,Name=“Jemma”},
新人{Id=6,Name=“Sharon”},
};
字典颜色=新字典()
{
{1,新颜色{colorname=“Color.Red”},
{2,新颜色{colorname=“Color.Green”},
{3,新颜色{colorname=“Color.Blue”},
};
随机数=新随机数();
int-listpositoremoveat=RandomNumber.Next(1,People.Count);
int randomColorPosition=RandomNumber.Next(1,colors.Count);
人员p=人员[ListPostionToRemoveAt];
颜色颜色分配=颜色[随机颜色位置];
p、 Color=colortoassign.colorName;
控制台。书写(“人员姓名:+p.姓名+”人员颜色:+p.颜色);
Console.ReadLine();
}
}

这是winforms、WPF、ASP.NET、console…?将颜色属性添加到
Utene
?制作
列表而不是
列表
?这是winforms、WPF、ASP.NET、,控制台…?将颜色属性添加到
utete
?创建
列表而不是
列表
?基本上使用字典来存储颜色,因为它可以使颜色与用户的链接更加顺畅。您可以很容易地扩展它,添加一个foreach循环来迭代列表,删除使用过的元素/人员以确保不重复。如果你需要更多的指导,尽管问。谢谢,我现在就试试,稍后会给你反馈!据我所知,这段代码不需要我之前发布的代码,对吗?还有,如果你有Person,我用“untene”来代替它,对吗?你没有,这实际上可能是更大程序的错误做法。我这样做是因为我通常在asp.yes中将字典与选择列表相关联,但这只会将一个随机颜色附加到一个随机用户。你需要使用foreach循环遍历列表,删除用户,然后将用户添加到新列表中以避免重复,然后你将有一个完整的具有相关颜色的人的列表。基本上使用字典来存储你的颜色,因为它使它们与用户的链接更加顺畅。您可以很容易地扩展它,添加一个foreach循环来迭代列表,删除使用过的元素/人员以确保不重复。如果你需要更多的指导,尽管问。谢谢,我现在就试试,稍后会给你反馈!据我所知,这段代码不需要我之前发布的代码,对吗?还有,如果你有Person,我用“untene”来代替它,对吗?你没有,这实际上可能是更大程序的错误做法。我这样做是因为我通常在asp.yes中将字典与选择列表相关联,但这只会将一个随机颜色附加到一个随机用户。您需要使用foreach循环遍历列表,删除用户,然后将用户添加到新列表中以避免重复,然后您将拥有一个具有相关颜色的完整列表。