1、怎么自动截断文本?

如题,当数据库中的数据内容超出了要显示的长度时,如果不采取措施,会破坏页面的布局美观,所以可以采用自动截断文本,需要查看的时候再把其他的内容显示出来。

没截断的时候如下图:

再视图中添加如下代码便可实现截断功能:

@helper Truncate(string input, int length)
{
if (input.Length <= length)
{
@input
}
else
{
@input.Substring(, length)<text>...</text>
}
}
<td>
@Truncate(item.Title, 25)
</td>
<td>
@Html.DisplayFor(modelItem => item.Price)
</td>

看到后面的省略号没有,那就是效果:

2、MVC怎么分页?

当要把数据库中的数据以分页的形式显示出来,可以用到一个分页插件PagedList,可以在VS2013中MSDN论坛搜索下载即可。

首先在bin文件夹下右键点击管理NuGet程序包,搜索并引用程序集:

然后在控制器Index动作中添加如下代码:

public ActionResult Index(int page = )
{
const int PageSize = ;
Models.MvcBookStoreEntities1 db = new Models.MvcBookStoreEntities1();
var Iuser = db.Books.OrderBy(p => p.BookId).ToPagedList(page, PageSize);
return View(Iuser);
}

在相应视图中添加如下代码,便可以实现分页了:

@Html.PagedListPager((IPagedList)Model, page => Url.Action("Index", new { page }), new PagedListRenderOptions { LinkToPreviousPageFormat = "上一页", LinkToNextPageFormat = "下一页", MaximumPageNumbersToDisplay =  })

效果如下图所示:

3、怎么使用Linq中的Take和ToList方法

首先在Index动作中添加如下代码:

Models.MvcBookStoreEntities1 db = new Models.MvcBookStoreEntities1();
var data = db.Categories.Take().ToList();
return View(data);

然后在添加视图,把原视图调整一下:

<ol>
@foreach (var item in Model)
{
<li>
<h5>
@Html.ActionLink(@item.Name, "Browse", new { id = @item.CategoryId })
</h5>
</li>
}
</ol>

运行结果如下图:

4、怎么使用@Html.ActionLink()和@Url.Action():

@Html.ActionLink()可以有3个参数,比如:

@Html.ActionLink(@item.Name, "Browse", new { id=@item.CategoryId})

第一个参数是要显示出来的字段,第二个是控制器中动作方法名,第三个是要传递的参数

@Url.Action()可以有两个参数,比如:

<a href="@Url.Action("Details",new {id=book.BookId})">

第一个参数动作名,第二个是要传递到Details中的参数。

电放费

Insist的更多相关文章

  1. If you insist running as root, then set the environment variable RUN_AS_USER=root...

    版权声明:本文为博主原创文章,不经博主允许注明链接即可转载. If you insist running as root, then set theenvironment variable RUN_A ...

  2. 2013 Asia Changsha Regional Contest---Josephina and RPG(DP)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=4800 Problem Description A role-playing game (RPG and ...

  3. Lesson 22 A glass envolops

    Text My daughter, Jane, never dreamed of receiving a letter from a girl of her own age in Holland. L ...

  4. openswan-ipsec.conf配置说明

    Name ipsec.conf - IPsec configuration and connections Description The optional ipsec.conf file speci ...

  5. 【转】How to hire——创业公司应该如何招人

    How to hire After startups raise money, their next biggest problem becomes hiring.  It turns out it’ ...

  6. JavaScript 对象的创建

    Object类型是JavaScript中使用最多的一种类型.创建Object实例的方式有多种,接下来一一列举. 1. Object构造函数 person1的friends属性修改影响了person2的 ...

  7. [转帖]The Lambda Calculus for Absolute Dummies (like myself)

    Monday, May 7, 2012 The Lambda Calculus for Absolute Dummies (like myself)   If there is one highly ...

  8. protocol

    For every object that can have a delegate, there is a corresponding protocol that declares themessag ...

  9. 【英语魔法俱乐部——读书笔记】 1 初级句型-简单句(Simple Sentences)

    第一部分 1 初级句型-简单句(Simple Sentences):(1.1)基本句型&补语.(1.2)名词短语&冠词.(1.3)动词时态.(1.4)不定式短语.(1.5)动名词.(1 ...

随机推荐

  1. 【分割圆】Uva 10213 - How Many Pieces of Land ?

    一个椭圆上有N个点,将这n个点两两相连,问最多能将这个椭圆分成多少片. 理清思路,慢慢推. 首先我们要想到欧拉公式:V+E-F=2 其中V为图上的顶点数,E为边数,F为平面数. 计算时的可以枚举点,从 ...

  2. 转: Android开发中的MVP架构详解(附加链接比较不错)

    转: http://www.codeceo.com/article/android-mvp-artch.html 最近越来越多的人开始谈论架构.我周围的同事和工程师也是如此.尽管我还不是特别深入理解M ...

  3. C#控制台程序 使用 Server.MapPath,

    (1)添加引用 System.Web. (2)在类中填写 using System.Web 命名空间. (3)写法为: System.Web.HttpContext.Current.Server.Ma ...

  4. markdown编辑

    有用的技巧之,如何实现首行空两格,把输入法切换成全角(shift+space),就可以实现一个两字符的空格了. 一级标题 二级标题 三级标题 四级标题 五级标题 六级标题 w s r s r s 文本 ...

  5. 实例介绍Cocos2d-x中Box2D物理引擎:使用关节

    下面我们将使用Box2D物理引擎技术进行重构.使得关节能够掌握如何在Box2D使用关节约束.HelloWorldScene.cpp中与使用关节的相关代码如下: void HelloWorld::add ...

  6. iOS打包及发布

    本篇介绍iOS应用的发布流程:由于苹果的发布周期太长, 再介绍一个很好用的测试网站——蒲公英. iOS应用程序的发布和真机调试调试很像,也需要申请各类证书. 1.进入https://developer ...

  7. iOS开发——返回特定的控制器

    用导航控制器返回到上一页和返回到根控制器有其自带方法. 返回到特定的控制器的核心代码: popToViewController用法 方式一,不推荐[self.navigationController ...

  8. OC6_复合类的类存管理

    // // Person.h // OC6_复合类的类存管理 // // Created by zhangxueming on 15/6/18. // Copyright (c) 2015年 zhan ...

  9. 基于asp.net的Web开发架构探索

    问题由来 最近在研究适合团队开发的web架构解决方案,该架构即要适合分工协作又要有一定扩展性,适合不同的数据库需要,因此我查阅了一些资料,初步构想出了一套架构,请各位多多指教. 探索 web开发架构最 ...

  10. 委托和事件[delegate and event]_C#

    委托和事件: 1. 委托:一个能够表示方法的数据类型:它将方法作为对象封装起来,允许在运行时间接地绑定一个方法调用. 2. 声明委托数据类型: public delegate  bool Greate ...