如何根据MVC中数据库的值选择默认值

编程入门 行业动态 更新时间:2024-10-26 10:35:25
本文介绍了如何根据MVC中数据库的值选择默认值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我在数据库中有一个表,用于存储用户注册时用户的所有值。我想在编辑模式下在表单中检索这些值。我已成功获取列表中的所有值,并在表单的编辑模式下在文本框中可见。但是表格中也有一个下拉列表,我无法根据来自目前列表中的数据库的值来设置下拉列表的默认值。 DataLayer

public 列表< registerviewmodel> GetUserdetail( string 角色) { 尝试 { cmd = new SqlCommand(); RegisterViewModel mvm; List< registerviewmodel> lstMVM = new List< registerviewmodel>(); cmd.CommandText = getUserdetail; if (!String.IsNullOrEmpty(Role)) { cmd.Parameters.Add( @ Role,SqlDbType.NVarChar).Value = Role; } DataTable dtModel = dl.GetSpData(cmd); foreach (DataRow dr in dtModel.Rows) { mvm = new RegisterViewModel(); mvm.Id = dr [ Id]。ToString(); mvm.CustomerName = dr [ 客户名称]。ToString(); mvm.Company = dr [ Company]。ToString(); mvm.Address = dr [ Address]。ToString(); mvm.City = dr [ City]。ToString(); mvm.RegionAbri = dr [ Region]。ToString(); mvm.PostalCode = dr [ 邮政编码]。ToString(); mvm.CountryId = int .Parse(dr [ CountryId]的ToString()); mvm.CountryName = dr [ CountryName]。ToString(); mvm.PhoneNumber = dr [ 电话号码]。ToString(); mvm.Fax = dr [ Fax]。ToString(); mvm.Email = dr [ Email]。ToString(); mvm.AckEmail = dr [ AckEmail]。ToString(); mvm.ApplicationDate = dr [ 申请日期]。ToString(); mvm.UserVerified = dr [ User Verified]。ToString(); mvm.UserStatus = dr [ 用户状态]。ToString(); mvm.CustomerNo = dr [ CustomerNo]。ToString(); mvm.Password = dr [ PasswordHash]。ToString(); mvm.Multiplier = dr [ 乘数]。ToString(); mvm.QuoteExpire = dr [ QuoteExpire]。ToString(); mvm.Freight = dr [ Freight]。ToString(); mvm.Rep = dr [ Rep]。ToString(); mvm.ISENumber = dr [ ISENumber]。ToString(); mvm.ReceiveMail = dr [ ReceiveMail]。ToString(); mvm.BuyingGroup = dr [ BuyingGroup]。ToString(); mvm.Comments = dr [ Comments]。ToString(); lstMVM.Add(mvm); } return lstMVM; } catch (例外e) { throw e; } }

控制器

public ActionResult UserMaintainance() { eQuoteDataAccess eqda = new eQuoteDataAccess(); RegisterViewModel model = new RegisterViewModel(); model.UserList = eqda.GetUserdetail(Role); return 查看(模型); }

查看

@ foreach(Model.UserList中的var项目) ) {@ Html.DropDownListFor(modelitem => item.CountryId,Model.Country)} < / registerviewmodel > < / registerviewmodel > < / registerviewmodel >

解决方案

之后DataBind(): dropDown.SelectedIndex = 0; 或 dropDown.SelectedValue =anyValue; 或 dropDown.Items.FindByValue(anyValue)。Selected = true; 或 dropDown.Items.FindByText(anyValue)。Selected = true; 尝试以下任何一项,这可能会有效:) -KR

I have a table in database which stores all the value about the user when the user registers.i want to retrive those values in the form in edit mode. i have successfully got all values in a list, and is getting visible in textbox in edit mode of the form. but there is a dropdown in the form too, i am not able to get how to set the default value of the dropdown based on my value coming from the databse which is presently in list. DataLayer

public List<registerviewmodel> GetUserdetail(string Role) { try { cmd = new SqlCommand(); RegisterViewModel mvm; List<registerviewmodel> lstMVM = new List<registerviewmodel>(); cmd.CommandText = "getUserdetail"; if (!String.IsNullOrEmpty(Role)) { cmd.Parameters.Add("@Role", SqlDbType.NVarChar).Value = Role; } DataTable dtModel = dl.GetSpData(cmd); foreach (DataRow dr in dtModel.Rows) { mvm = new RegisterViewModel(); mvm.Id = dr["Id"].ToString(); mvm.CustomerName = dr["Customer Name"].ToString(); mvm.Company = dr["Company"].ToString(); mvm.Address = dr["Address"].ToString(); mvm.City = dr["City"].ToString(); mvm.RegionAbri = dr["Region"].ToString(); mvm.PostalCode = dr["Postal Code"].ToString(); mvm.CountryId = int.Parse(dr["CountryId"].ToString()); mvm.CountryName = dr["CountryName"].ToString(); mvm.PhoneNumber = dr["Phone Number"].ToString(); mvm.Fax = dr["Fax"].ToString(); mvm.Email = dr["Email"].ToString(); mvm.AckEmail = dr["AckEmail"].ToString(); mvm.ApplicationDate = dr["Application Date"].ToString(); mvm.UserVerified = dr["User Verified"].ToString(); mvm.UserStatus = dr["User Status"].ToString(); mvm.CustomerNo = dr["CustomerNo"].ToString(); mvm.Password = dr["PasswordHash"].ToString(); mvm.Multiplier = dr["Multiplier"].ToString(); mvm.QuoteExpire = dr["QuoteExpire"].ToString(); mvm.Freight = dr["Freight"].ToString(); mvm.Rep = dr["Rep"].ToString(); mvm.ISENumber = dr["ISENumber"].ToString(); mvm.ReceiveMail = dr["ReceiveMail"].ToString(); mvm.BuyingGroup = dr["BuyingGroup"].ToString(); mvm.Comments = dr["Comments"].ToString(); lstMVM.Add(mvm); } return lstMVM; } catch (Exception e) { throw e; } }

Controller

public ActionResult UserMaintainance() { eQuoteDataAccess eqda = new eQuoteDataAccess(); RegisterViewModel model = new RegisterViewModel(); model.UserList = eqda.GetUserdetail(Role); return View(model); }

View

@foreach (var item in Model.UserList) { @Html.DropDownListFor(modelitem => item.CountryId,Model.Country)}</registerviewmodel></registerviewmodel></registerviewmodel>

解决方案

After your DataBind(): dropDown.SelectedIndex = 0; or dropDown.SelectedValue = "anyValue"; or dropDown.Items.FindByValue("anyValue").Selected = true; or dropDown.Items.FindByText("anyValue").Selected = true; Try any of this, this might work :) -KR

更多推荐

如何根据MVC中数据库的值选择默认值

本文发布于:2023-10-18 12:22:39,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1504221.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:默认值   数据库   MVC

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!