MVC出错与调错记录

1.在mvc页面中 后台代码中 如果不使用<%=%>中的等号 ,有时候会出错

eg:< a href="<%=item.ID %>">  <%=item.Title%></a>当省略Item.ID前的等号的时候,出错:

2.在mvc中,要使用链接时,可以使用<a href="<%=item.ID%>">跳转</a>

    还可以使用<%=Html.ActionLink("跳转","GoTo",new{id=item.ID})%>

跳转还可以使用Html.RouteLink(i.ToString(), ViewContext.RouteData.Values);

3.分页

 <% for (int i = (int)ViewData["start"]; i <= (int)ViewData["sum"]; i++)
                           {
                               ViewContext.RouteData.Values["pn"] = i;//设置页码
                               ViewContext.RouteData.Values["sc"] = ViewData["hid"];
                               ViewContext.RouteData.Values["sn"] = ViewData["sn"];
                               Writer.Write(Html.RouteLink(i.ToString(), ViewContext.RouteData.Values));
                               //显示设置页面后的链接
                               Writer.Write("  ");//连接后显示个空格,好看点
                           }
                           ViewContext.RouteData.Values["pn"] = (int)ViewData["cpn"] + 1;//设置页码
                           Writer.Write(Html.RouteLink("下一页", ViewContext.RouteData.Values));
                        %>
                        总页数
                        <%=ViewData["sum"]%>

4.DropDownList绑定

MVC架构下,关于如何设置DropDownList的默认选中项以及修改后填充以后的设置选中项
http://www.cnblogs.com/lushuicongsheng/archive/2011/05/02/2034362.html参考

   <%= Html.DropDownList("plates",ViewData["plates"] as SelectList)%>  这里不管ViewData["plates"]的值是怎样的,这里默认为选中第一项,

如果想默认选中修改后的 ViewData["plates"]中的selected=true 的项,要这样写

 栏目:<%=Html.DropDownList("plates")%>,这样才是 选中 ViewData["plates"]中的selected=true 的项,

5.Linq删除出错  :删除未赋值的实体

Plate p=new  Plate();

p.name="adf";

_db.Plate.DeleteOnSubmit(p);

//这里p是new的,数据库找不到,这里要使用,在数据库中查找到一个实体 然后删除,不能找一个和数据库值一样的实体删除。

原文地址:https://www.cnblogs.com/nanxiaoxiang/p/2622563.html