/*
Desc:按指定符号分割字符串,返回分割后的元素个数
Author:LHB
UpdateDate:2016-06-28 16:20
*/
ALTER function [dbo].[Get_StrArrayLength]
(
@str nvarchar(max), --要分割的字符串
@split varchar(10) --分隔符号
)
选择Microsoft.Web.Mvc.DataAnnotations.dll程序集和System.ComponentModel.DataAnnotations.dll程序集并点击确定按钮。不能和数据注释模型绑定器一起使用.NET Framework Service Pack 1里面包含的System.ComponentModel.DataAnnotations.dll程序集,你必须使用下载的例子里的包含的System.ComponentModel.DataAnnotations.dll版本。
最后,你需要在Global.asax文件里面注册数据注释模型绑定器。添加下面的代码到Application_Start()事件里:
protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes)
ModelBinders.Binders.DefaultBinder = new Microsoft.Web.Mvc.DataAnnotations.DataAnnotationsModelBinder()
}
这些代码将ataAnnotationsModelBinder注册成为整个ASP.NET MVC应用的默认模型绑定器。
在使用数据注释模型绑定器的时候,要使用验证器特性来执行验证。System.ComponentModel.DataAnnotations命名空间包含了下面的验证特性:
Range--允许你验证一个属性的值是否在一个特定的值范围。
RegularExpression--允许你验证一个属性的值是否符合你个特定的正则表达式模式。
Required--允许你标记一个属性为必须的。
StringLength--允许你指定一个字符串属性的最大长度。
Validation--所有验证器特性的基类。
如果这些标准验证器无法满足你的需要,那么你可以通过继承基验证特性来实现一个新的验证器特性这种方式来创建一个自定义的验证器特性。
清单1的Product类说明了如何使用这些验证器特性。Name、Description和UnitPrice特性被标志为必须的。Name特性必须是一个长度小于10个字母的字符串。最后,UnitPrice属性必须匹配一个表示当前数量的正则表达式模式。
using System.ComponentModel
using System.ComponentModel.DataAnnotations
namespace MvcApplication1.Models
{
public class Product
{
public int Id { getset}
[Required]
[StringLength(10)]
public string Name { getset}
[Required]
public string Description { getset}
[DisplayName("Price")]
[Required]
[RegularExpression(@"^\$?\d+(\.(\d{2}))?$")]
public decimal UnitPrice { getset}
}
}
清单 1: Models\Product.cs
Product类说明了如何使用一个额外的特性:DisplayName特性。DisplayName特性允许你在修改属性在错误消息里显示的名称。与现实错误消息"UnitPrice字段不能为空"相反,你可以显示"Price字段是必填项"。
如果你想要完全自定义显示在验证器上面的错误消息,那么你可以将一个自定义错误消息像这样子赋值到验证器的ErrorMessage属性:<Required(ErrorMessage:="This field needs a value!")>
你可以使用清单1的Product类和清单2的Create()控制器行为。这个控制器行为在模型状态包含任何错误的时候重新显示了Create视图。
using System.Web.Mvc
using MvcApplication1.Models
namespace MvcApplication1.Controllers
{
public class ProductController : Controller
{
//
// GET: /Product/Create
public ActionResult Create()
{
return View()
}
1. 制定位置插入字符:string s="1030"s=s.Insert(2,":")
2. F是固定的话
string s="F001"
int i=int.Parse(s.Replace("F",""))
i++
s="F"+i.ToString()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)