asp.net mvc怎么显示数据在视图上

asp.net mvc怎么显示数据在视图上,第1张

这个问题有点广,首先你要清楚ASP.NET MVC的工作机制,C控制器从M模型取得数据,然后给VIEW视图,在控制器方法里可以通过RETURN VIEW(USER),这的USER是个模型,也可以是一个模型集合给视图,在视图里可以使用这些数据了,或者通过控制器方法里用VIEWDATA这样把数据直接给VIEW视图,建议看一些基础代码或查阅MSDN,很容易理解的

MVC 的话需要 用ajax 才能实现,或者把datatable转为list<实体类>反回给页面

ajax:记住前面返回的是数据流

$.post("/OtherOutDepotDetail/ShowSelect?id=" + OODID, "", function(data) {

var list = data

$("#tb tr:gt(0)").remove()

for (var i = 0i <list.lengthi++) {

var info = list[i]

var tr = $("<tr></tr>")

tr.append("<td>" + info.OODID + "</td>")

tr.append("<td>" + info.ProID + "</td>")

tr.append("<td>" + info.OODDAmount + "</td>")

tr.append("<td>" + info.OODDPrice + "</td>")

var num = eval(info.OODDAmount * info.OODDPrice)

tr.append($("<td >" + num + "</td>"))

tr.append("<td>" + info.OODDDesc + "</td>")

tr.appendTo("#tb tbody")

}

})

方法2:转 list<实体类>

public action 控制器名(){

前面的sql语句就不写了反正得到一个有值的datatable

调用SelectsAll<Product_List>(dt)

List<Product_List>list = mdhep.SelectsAll<Product_List>(dt)

ViewBag.List = list

return View()

}

实体类:

public class Product_List

{

public int ID{getset} //主键

public string Product_MingCheng{getset}//名称

public string Product_JieShao{getset} //简介

}

//SelectsAll<Product_List>()方法,把datatable转换为list<实体>

public List<T>SelectsAll<T>(DataTable dt) where T : new()

{

// 定义集合

List<T>list = new List<T>()

// 获得此模型的类型

Type type = typeof(T)

//定义一个临时变量

string tempName = string.Empty

//遍历DataTable中所有的数据行

foreach (DataRow dr in dt.Rows)

{

T t = new T()

// 获得此模型的公共属性

PropertyInfo[] propertys = t.GetType().GetProperties()

//遍历该对象的所有属性

foreach (PropertyInfo pi in propertys)

{

tempName = pi.Name//将属性名称赋值给临时变量

//检查DataTable是否包含此列(列名==对象的属性名)

if (dt.Columns.Contains(tempName))

{

// 判断此属性是否有Setter

if (!pi.CanWrite) continue//该属性不可写,直接跳出

//取值

object value = dr[tempName]

//如果非空,则赋给对象的属性

if (value != DBNull.Value)

pi.SetValue(t, value, null)

}

}

//对象添加到泛型集合中

list.Add(t)

}

dt.Clear()

dt.Dispose()

return list

}

HTML:这样就行了

1,引用实体类

2

<table>

foreach(Product_List pd in ViewBag.List)

{

<tr>

<td>>@pd.Product_MingCheng</td>

<td>>>@pd.Product_JieShao</td>

</tr>

}

</table>

希望能解决你的问题,方法2应该够详细了

首先,你要在页面上触发事件,即点击编辑按钮时,触发一个click事件,向后台发送一个请求,这种js+ajax去做就行了。

其次,你要用Spring 来拦截这个请求,建议用注解的方式,在你要处理这个请求的方法上加上注解(处理请求的url),方法的参数就是你从页面上传的数据。这样你的请求就可以在后台处理了。

接下来,就是你要查询用户信息了,这些信息可能存在关系型数据库里,那就用sql去查。如果存在文件里,那就用流去读取文件。当然也可以存在NoSql中。这一步更加数据源的不同来处理了。

查到用户数据之后,经过处理,最后要以字符串的形式传到前台,建议用JSONObject格式化成JSON数据,这样前台处理方便些。

这只是大体过程,有细节不懂可以再细问。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11425968.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存