Нет элемента ViewData типа «IEnumerable <SelectListItem>», который имеет ключ «BooksCategoryID» - PullRequest
0 голосов
/ 07 апреля 2020

Это мой код для получения списка из базы данных. Я постоянно получаю сообщение об ошибке, пожалуйста, помогите.

public List<SelectListItem> dropdownmenu()
        {
            List<SelectListItem> book = new List<SelectListItem>();
            string query = "select * from [dbo].[tblBooksCategory]";
            SqlCommand cmd = new SqlCommand(query, con);
            DataTable dt = new DataTable();
            SqlDataAdapter da = new SqlDataAdapter();
            con.Open();
            da.SelectCommand = cmd;

            da.Fill(dt);
            con.Close();
            List<SelectListItem> a = new List<SelectListItem>();

            foreach (DataRow item in dt.Rows)
            {
                a.Add(new SelectListItem { Text = item["CategoryName"].ToString(), Value = 
                item["ID"].ToString(), Selected = false });
            }

            return a;

        }

Код для конструктора COntroller

public BooksController()
        {
            var data = obj.dropdownmenu();
            ViewBag.menu = data;
        }

И вот последний код представления, который постоянно получает ошибку, которую я изменил, но не происходит.

 <div class="col-sm-4 mb-3 mb-sm-0">
            <label>Book Category</label><br />
            @Html.DropDownListFor(model => model.BooksCategoryID, ViewBag.menu as IEnumerable<SelectListItem>, "Please select category", new { @class = "btn btn-theme dropdown-toggle ", required = "required" })

        </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...