MVC4中常用的短句及配置归结(部分)

1、实体类

Attribute:需要引用命名空间System.ComponentModel.DataAnnotations

[Required(ErrorMessage="")]:表示字段必须,在提交时进行验证,不通过返回ErrorMessage。

[DisplayFormat(NullDisplayText="",DataFormatString="")]:用于日期显示格式及对于NULL值的处理。

[Key]:主键字段。

[MaxLength(36,ErrorMessage="")]:最大长度限制,超出限制时返回ErrorMessage。

[MinLength(8,ErrorMessage="")]:最小长度限制,未达到长度返回ErrorMessage。

[Phone(ErrorMessage="")]:对于电话号码的验证,不符合返回ErrorMessage。

[StringLength(12,MinimumLength=6,ErrorMessage="")]:指定数据字段的最大和最小长度,不符合返回ErrorMessage。

[Url(ErrorMessage="")]:URL验证,不符合返回ErrorMessage。

2、Global.asax

在MVC4中Global的详细配置项在【App_Start】文件夹中。其中BundleConfig.cs文件是对JS、CSS等系列文件的归结,RouteConfig.cs是对路由器的配置。

3、页面

@Html.ActionLink():说明示例,

1),@Html.ActionLink("要显示的文字", "Index"):参数,LinkText,ActionName,不带参控制器内跳转

2),@Html.ActionLink("要显示的文字", Index", new {id=item.ID }):参数,LinkText,ActionName,RouteVlues,带参控制器内跳转,其中item为页面内Model。

3),@Html.ActionLink("要显示的文字", "Index",routeValues:new{id=item.ID},htmlAttributes:null):参数,LinkText,ActionName,routeValus,htmlAttributes。

4),@Html.ActionLink("要显示的文字", "Index","Home",routeValues:new{id=item.ID},htmlAttributes:null),参数,,LinkText,ActionName,ControllerName,routeValus,htmlAttributes,带参跨控制器跳转,成功跳转需要把所有Attribute都写上

@Html.DropDownList():说明示例,

@Html.DropDownList("Sex",String.empty),参数,name,optionLabel。Controller中配置:

1),ViewBag.Sex=new List<SelectListItem>(){new SelectListItem(){Text="",Value="",Selected=Bool}};

1 ViewBag.Sex = new List<SelectListItem>() { new SelectListItem() { Text = "", Value = "" }, new SelectListItem() { Text = "", Value = "" } };

2),ViewBag.Sex=new SelectList(item,value,text,selecteditem);

1 ViewBag.Sex = new SelectList(db.Sjzd, "ID", "sjzdname", "1");

日期控件,My97DatePicker(WdatePicker):Ps:需要的可以google一下。示例说明,

JS引入,

<script src="@Url.Content("~/MyControls/MyDatePicker/WdatePicker.js")" type="text/javascript"></script>

使用,

@Html.TextBox("Biyeshijian", ViewData["dateNow"], new {@class="Wdate", onfocus="WdatePicker({skin:'default',dateFmt:'yyyy-MM-dd',isShowClear:false,readOnly:true})" })

分页控件(MvcPaper),示例说明,

添加MvcPager引用,并在【View】中web.config中添加命名空间,

在页面修改,

加入

<div>
        共有 @Model.TotalItemCount 条记录  第 @Model.CurrentPageIndex 页/共 @Model.TotalPageCount 页
        @Html.Pager(Model, new PagerOptions { PageIndexParameterName = "page", ShowPageIndexBox = true, PageIndexBoxType = PageIndexBoxType.TextBox, PageIndexBoxWrapperFormatString = "请输入页数{0}" }, "Default", new { sortOrder = ViewBag.DateSortParm, searchString = ViewBag.Filter })
</div>

Controller中修改Index()方法

复制代码
public ActionResult Index(int? page=1)
        {
            var users = db.Users.Include(u => u.Group);
            users = users.OrderByDescending(u => u.IsLeader);
            int pageSize = 15;
            int pageIndex = page ?? 1;
            return View(users.ToPagedList(pageIndex, pageSize));
            //return View(users.ToList());
        }
复制代码

需要注意,此控件使用时需要先有排序,否则报错。

4、其他可直接用或修改后可用的代码

用户登录验证

修改过的
1 db.Users.where(e=>e.loginname == _loginname && e.password == _password).firstordefault();

 

判断某项是否已经存在

复制代码
 1 private bool Exists(string groupName)
 2         {
 3             var group = from t in db.Group
 4                          select t;
 5             int count = group.Count(g => g.GroupName.Contains(groupName));
 6 
 7             //int count=db.Group.Count(g => g.GroupName.Contains(groupName));
 8             if (count == 0)
 9                 return false;
10             else
11                 return true;
12         }
复制代码

 

posted @   禁止吸烟  阅读(5029)  评论(12编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示