Controller:
1 public ActionResult Index() 2 { 3 string setting = "ApplicationServices"; 4 var connString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings[setting]; 5 SqlConnection conn = new SqlConnection(connString.ConnectionString); 6 SqlCommand cmd; 7 SqlDataReader datar; 8 string str_sql = "select * from T_category;"; 9 conn.Open(); 10 cmd = new SqlCommand(str_sql, conn); 11 datar = cmd.ExecuteReader(); 12 List<string> list_categoery = new List<string>(); 13 while (datar.Read()) 14 { 15 list_categoery.Add(datar["category_name"].ToString()); 16 } 17 conn.Close(); 18 ViewBag.Categories = list_categoery; 19 20 str_sql = "select * from T_product;"; 21 conn.Open(); 22 cmd = new SqlCommand(str_sql, conn); 23 datar = cmd.ExecuteReader(); 24 productModel pm = new productModel(); 25 while (datar.Read()) 26 { 27 pm.product_name = datar["Product_name"].ToString(); 28 pm.product_description = datar["Product_description"].ToString(); 29 pm.product_image = datar["Product_image"].ToString(); 30 pm.product_document = datar["Product_document"].ToString(); 31 } 32 conn.Close(); 33 return View(pm); 34 }
View:
@model MvcApplication2.Models.productModel @{ Layout = null; } <div id="categories"> <ul> @foreach (var cate in (ViewBag.Categories) as IEnumerable<string>) { <li>@cate</li> } </ul> </div> <section id="isBIM_models"> <div> <div id="Section_one"> <div id="One_product"> <div id="product_image"> <img src="~/image/isBIM_product/@(Model.product_image).jpg"/> </div> <div id="product_description"> <p>简介:<br />@Model.product_description</p> </div> <div class="clearfix"></div> <div id="product_source"> <a href="~/DLL/@(Model.product_name)_DLL_2015.dll">下载</a> <input type="button" id="downloadbutton"/> @*<a href="~/Home/download">Click to get file</a>*@ </div> </div> </div> </div> </section>
(view中只列出了绑定模型字段的部分)
Model:
public class productModel { public productModel() { } public int product_id { get; set; } public string product_name { get; set; } public string product_description { get; set; } public string product_image { get; set; } public string product_document { get; set; } }
如果运行时遇到这样的报错:Microsoft.CSharp.RuntimeBinder.RuntimeBinderException
则在Assemblyinfo.cs中添加一句:
[assembly: InternalsVisibleTo("MvcApplication2.Controllers")]