mvc 方面的问题?
为什么,值类型+?变成了引用类型。这是哪里来的语法?我到哪里去学?JsonResult()是返回一串json格式的数据.,视图层是在哪里处理、怎么处理,这些数据的?大神,...
为什么,值类型+? 变成了引用类型。 这是哪里来的语法? 我到哪里去学?
JsonResult()是返回一串json格式的数据., 视图层是 在哪里处理、 怎么处理,这些数据的?
大神,当年事怎么学习这方面的知识? 小弟是菜鸟, 求大神详细解答。
---------------------------------------------------------------------
这是某个项目里面 ,mvc中 控制层 中的一个函数,
public ActionResult AddCar(int? id, string carNum){
……………………
return new JsonResult() { Data = new { result = 1, msg = "添加车辆失败!" } };
问题一: 形参中的 int ? id 是什么意思?
问题二: return jsonRestlt();怎么和 视图层(view),进行交互的?
新建的mvc程序都是,return view(),这里是return JsonReslt(),这是为什么?
本人是菜鸟,求高手耐心仔细解答.用的是mvc 框架, 语言 js jquery Easyui, 开发工具是vs2010 展开
JsonResult()是返回一串json格式的数据., 视图层是 在哪里处理、 怎么处理,这些数据的?
大神,当年事怎么学习这方面的知识? 小弟是菜鸟, 求大神详细解答。
---------------------------------------------------------------------
这是某个项目里面 ,mvc中 控制层 中的一个函数,
public ActionResult AddCar(int? id, string carNum){
……………………
return new JsonResult() { Data = new { result = 1, msg = "添加车辆失败!" } };
问题一: 形参中的 int ? id 是什么意思?
问题二: return jsonRestlt();怎么和 视图层(view),进行交互的?
新建的mvc程序都是,return view(),这里是return JsonReslt(),这是为什么?
本人是菜鸟,求高手耐心仔细解答.用的是mvc 框架, 语言 js jquery Easyui, 开发工具是vs2010 展开
2个回答
展开全部
问题一:三元表达式,id可不传递参数,即int可赋值null
问题二:return view(参数“new JsonResult() { Data = new { result = 1, msg = "添加车辆失败!" } }”),视图页使用参考下面的
public ActionResult Index(int? page)
{
if (ViewData["k"] != null)
{
System.IO.File.WriteAllText("D:\\tid7.txt", ViewData["k"].ToString());
}
var newsClasses = from c in news.NewsClassesSet orderby c.ID select new SelectListItem { Text = c.ClassName, Value = c.ID };
ViewBag.NewsClasses = newsClasses;
var newsList = from m in news.NewsSet orderby m.BookTime descending select m;
PagerHelper<News> pager = new PagerHelper<News>(newsList, "/News/index", 1, page ?? 1, 3, true);
return View(pager);
}
@{
Layout = null;
}
@model PagerHelper<MvcApplication2.Models.News>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>新闻列表</title>
<link type="text/css" href="/Images/css.css" rel="Stylesheet" />
<script type="text/javascript">
function PagePostSubmit(url, page) {
document.getElementById("PageIndex").value = page;
document.forms[0].method = "post";
document.forms[0].action = url;
document.forms[0].submit();
}
</script>
</head>
<body>
<div>
<table cellpadding="0" cellspacing="0" style="width:750px; background-image:url(/Images/pageheadbg.jpg)">
<tr>
<td style="height:30px; vertical-align:top">
<div style="margin-left:20px; margin-top:8px; color:White; font-size:11pt; font-weight:bold" id="PTitle" runat="server">信息列表</div>
</td>
</tr>
</table>
<br />
@using (Html.BeginForm())
{
<table cellpadding="0" cellspacing="0" style="width:750px">
<tr>
<td class="t1" style="width:15%; height:29px">
新闻类别</td>
<td class="t1" style="width:35%">
@Html.DropDownList("NewsClasses", ViewBag.NewsClasses as SelectList, "—请选择—")</td>
<td class="t1" style="width: 15%">
信息标题</td>
<td class="t2" style="width:35%">
@Html.TextBox("NewsTitle")</td>
</tr>
<tr>
<td class="t4" style="height:35px; text-align:center" colspan="4">
@Html.Hidden("PageIndex", Model.PageIndex.ToString())
<input type="submit" value="- 查询 -" />
<input type="button" value="- 添加 -" onclick="location.href = '/News/NewsEdit'" />
</td>
</tr>
</table>
}
@{Html.RenderPartial("_login", Model);}
<table cellpadding="0" cellspacing="0" style="width: 750px">
<tr>
<td class="t1" style="text-align:center; width:15%; background-color:#0ff; height:29px">
新闻类别</td>
<td class="t1" style="text-align:center; width:45%; background-color:#0ff">
新闻标题</td>
<td class="t1" style="text-align:center; width:10%; background-color:#0ff">
阅读次数</td>
<td class="t1" style="text-align:center; width:15%; background-color:#0ff">
发布时间</td>
<td class="t2" style="text-align:center; width:15%; background-color:#0ff">
操作</td>
</tr>
@{
List<SelectListItem> nclist = (ViewBag.NewsClasses as IQueryable<SelectListItem>).ToList();
}
@foreach (var news in Model.PagedData)
{
<tr>
<td class="t1" style="text-align:center; height:29px">
@nclist.FirstOrDefault(c => c.Value == news.NewsClass).Text </td>
<td class="t1">
@news.NewsTitle </td>
<td class="t1" style="text-align:center">
@news.ReadCounts </td>
<td class="t1" style="text-align:center">
@news.BookTime </td>
<td class="t2" style="text-align:center">
@Html.ActionLink("编辑", "NewsEdit", new { news.ID })
@Html.ActionLink("删除", "NewsDelete", new { news.ID }, new { onclick = "return confirm('你确认删除吗?')" })
</td>
</tr>
}
<tr>
<td class="t4" style="height:45px;text-align:center" colspan="5">
@Html.Raw(Model.PageNumberBar)
</td>
</tr>
</table>
</div>
</body>
</html>
追问
int ? id 是哪里的语法? 从哪里可以学到? 楼主, 小弟是菜鸟中的菜鸟, 想请教楼主当年学习, mvc的时候, 已经具备了什么样的基础?
追答
这是语言基础与框架无关,不仅有int ? id 还有int ?? id ,掌握语言基础,这是最基础的了,数据类型,要运用mvc,首先会得三层,其他就是mvc新知识的学习,比如razor语法等等
展开全部
如上面的所说,int 是值类型,他的默认值是 0 。但是有的时候,你QueryString并不带这个id参数。
而你又没有一个Action可以处理这个请求。
但是你要处理怎么办呢?
你就需要给一个Action 让它能够接受,你这个不带id参数的请求。
注:对于不存在的东西,即为null。
那么,你就需要一个能够接受null值的Action。
所以,int? 扩展了int 的范围,增加了null值。
而对于楼上说的 ??
public string poo(int? id)
{
//todo
}
调用:
int? x;
//todo...
poo(x??5);
也就是说,x如果为null,则默认传值5.
而你又没有一个Action可以处理这个请求。
但是你要处理怎么办呢?
你就需要给一个Action 让它能够接受,你这个不带id参数的请求。
注:对于不存在的东西,即为null。
那么,你就需要一个能够接受null值的Action。
所以,int? 扩展了int 的范围,增加了null值。
而对于楼上说的 ??
public string poo(int? id)
{
//todo
}
调用:
int? x;
//todo...
poo(x??5);
也就是说,x如果为null,则默认传值5.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询