首页 > 解决方案 > 下拉列表,选择选项文本(来自数据库)使用 C# razor 变为垂直单个字母

问题描述

我正在尝试从我的 SQL Server 数据库中的数据集列创建一个下拉列表。我已成功链接数据。但是,在视图中,下拉列表数据似乎具有垂直文本。

请看下面截取的屏幕:

当您看到捕获的图像时,列表变为垂直,单个字母变为选项选择

这是存储过程,下拉列表选项应显示

这是什么原因造成的?请帮忙!

我只是要发布相关代码以便于查看。

这是 html 代码行(我为 savedCompCoList 放置索引 0 仅用于测试仅获取第一行):

<div>@Html.DropDownListFor(x => x.objBV.objCompCo.SavedCompCoSelected, new SelectList(Model.objBV.objCompCo.SavedCompCoList[0].CompCo_ID_With_date_List), "Select List", new { style = "width: 250px;" }))</div>

用于xmlDocument连接数据库:

public static XmlDocument GetSavedCompCo()
{
    XmlDocument xmlTmp = DatabaseLib.RunStoredProcedure(UDV.spGetSavedCompCoListBV, UDV.connStringUserDB);
  
    return xmlTmp;
}

使用网络方法:

[WebMethod]
public XmlDocument GetSavedCompCo() { return BDOLibrary_Val_BV.CompsLib.GetSavedCompCo(); }

我的模型 - 这是循环的循环(这可能是原因):

public class CompCo
{
        private readonly BDOWebService.BDOWebService webS = new BDOWebService.BDOWebService(); //EC: web service

        //EC: variables
        public List<SavedCompCo> SavedCompCoList { get; set; }
        public int SavedCompCoSelected { get; set; }

        public CompCo()
        {
            initSavedCompCoList();
            Comps = new List<Company>();
        }

        private void initSavedCompCoList()
        {
            SavedCompCoList = new List<SavedCompCo>();
            XmlDocument xmlTmp = webS.GetSavedCompCo();

            XmlNodeList nodeListSavedCompCo_ID_With_Date = xmlTmp.GetElementsByTagName("CompCo_ID_With_Date");

            for (int i = 0; i < nodeListSavedCompCo_ID_With_Date.Count; i++)
            {
                SavedCompCo SavedCompCoTemp = new SavedCompCo();
                SavedCompCoTemp.CompCo_ID_With_date_List = nodeListSavedCompCo_ID_With_Date[i].InnerText.Trim();

                SavedCompCoList.Add(SavedCompCoTemp);
            }
    
        }
}

请提前帮助和感谢!

标签: c#sql-serverasp.net-mvcloopsdropdownlistfor

解决方案


推荐阅读