C# 显示数据库中最大值和最小值之间的下拉列表值

C# 显示数据库中最大值和最小值之间的下拉列表值,c#,asp.net,C#,Asp.net,我有一个下拉框,下拉框中的值不一致。示例-从数据库获取最大值和最小值,并在下拉列表中显示从最大值到最小值的值。与最小值为3,最大值为7一样,将显示的值为3,4,5,6,7。 这就是我在想的,但是如何实现或调用下拉列表中的函数,有人能详细地帮助我,从昨晚开始努力解决这部分问题 MaxMinSkillLevel minMax = CompetencyManager.GetMaxAndMinSKillLevelBySkillName(lblname.Text); // Lis

我有一个下拉框,下拉框中的值不一致。示例-从数据库获取最大值和最小值,并在下拉列表中显示从最大值到最小值的值。与最小值为3,最大值为7一样,将显示的值为3,4,5,6,7。 这就是我在想的,但是如何实现或调用下拉列表中的函数,有人能详细地帮助我,从昨晚开始努力解决这部分问题

MaxMinSkillLevel minMax = CompetencyManager.GetMaxAndMinSKillLevelBySkillName(lblname.Text);


        //    List<string> DDLlist = new List<string>();
        //    for (int i = Int32.Parse(minMax.minimumLevel); i < Int32.Parse(minMax.maximumLevel); i++)
        //    {
        //        DDLlist.Add((i + 1).ToString());

        //    }
MaxMinSkillLevel minMax=CompetencyManager.GetMaxAndMinSKillLevelBySkillName(lblname.Text);
//List DDLlist=新列表();
//for(inti=Int32.Parse(minMax.minimumLevel);i
如果我正确理解你的问题

在页面加载时,您可以执行以下操作:

void Page_Load(Object sender, EventArgs e)
  {

        if (DDLlist==null)
        {
          MaxMinSkillLevel minMax = CompetencyManager.GetMaxAndMinSKillLevelBySkillName(lblname.Text);

          DDLlist = new List<string>();
          for (int i = Int32.Parse(minMax.minimumLevel); i < Int32.Parse(minMax.maximumLevel); i++)
          {
            DDLlist.Add((i + 1).ToString());
          }
        }
     // Load data for the DropDownList control only once, when the 
     // page is first loaded.
     if(!IsPostBack)
     {

        // Specify the data source
        YourDropDownList.DataSource = DDLlist;

        // Bind the data to the control.
        YourDropDownList.DataBind();

        // Set the default selected item, if desired.
        YourDropDownList.SelectedIndex = 0;

     }

  }
void页面加载(对象发送方,事件参数e)
{
如果(DDLlist==null)
{
MaxMinSkillLevel minMax=CompetencyManager.GetMaxAndMinSKillLevelBySkillName(lblname.Text);
ddlist=新列表();
for(inti=Int32.Parse(minMax.minimumLevel);i
试试这个

MaxMinSkillLevel minMax = CompetencyManager.GetMaxAndMinSKillLevelBySkillName(lblname.Text);
int min = Int32.Parse(minMax.minimumLevel);
int max = Int32.Parse(minMax.maximumLevel);

//Enumerable.Range(start, count)
List<int> skills = Enumerable.Range(min, (max - min) + 1).ToList();

skillsDropDown.DataSource = skills;
skillsDropDown.DataBind();
MaxMinSkillLevel minMax=CompetencyManager.GetMaxAndMinSKillLevelBySkillName(lblname.Text);
int min=Int32.Parse(minMax.minimumLevel);
int max=Int32.Parse(minMax.maximumLevel);
//可枚举范围(开始、计数)
List skills=Enumerable.Range(min,(max-min)+1.ToList();
skillsDropDown.DataSource=技能;
skillsDropDown.DataBind();

问题出在哪里?当您查询数据库时,是否应用了“order by”子句,这样您就不会得到不同的顺序?你能显示CompetencyManager.GetMaxAndMinSKillLevelBySkillName的定义吗?是的,我是按order by编写的,很抱歉我把方法名写错了,这是方法public static GetLevelRangeByCompetency\u Result GetLevelRangeByCompetency(int competencyID){GetLevelRangeByCompetency_Result Result=new GetLevelRangeByCompetency_Result();if((Result=CompetencyDAO.GetLevelRangeByCompetency(competencyID))==null){Result.MinLevel=“0”;Result.MaxLevel=“0”}返回结果;}如果你想修改你的问题,不要发表评论,而是编辑你自己的帖子