如何使用C#中的用户注释?
数据注释是能够运用于类或类成员的特点,以指定类之间的联系、描述数据怎么在UI中显现以及指定验证规矩。本文评论数据注释、为什么数据注释很有用以及怎么在.NETCore应用程序中运用它们。
若要运用本文供给的代码示例,您应该在体系中装置VisualStudio2019。如果还没有装置,能够在此处下载VisualStudio2019。
在VisualStudio2019中创立控制台应用程序项目
首先,无妨在VisualStudio中创立一个.NETCore控制台应用程序项目。假定体系中已装置VisualStudio2019,按照下面概述的步骤在VisualStudio中创立新的.NETCore控制台应用程序项目。
启动VisualStudioIDE。
点击“创立新项目”。
在“创立新项目”窗口中,从显现的模板列表中挑选“控制台应用程序”。
点击下一步。
在接下来显现的“装备新项目”窗口中,指定新项目的名称和位置。
点击创立。
这将在VisualStudio2019中创立一个新的.NETCore控制台应用程序项目。我们在本文后边将运用该项目来处理数据注释。
增加System.ComponentModel.DataAnnotations命名空间
想运用本文给出的代码示例,应该将System.ComponentModel.DataAnnotations命名空间增加到您的程序。
留意,特点用于指定类或特点的元数据。数据注释特点大致分为以下几类:
验证特点——用于对实体的特点施行验证规矩。
显现特点——用于指定数据在用户界面中应怎么显现。
建模特点——用于指定类之间存在的联系。
C中的数据注释示例
在前面创立的控制台应用程序中的Author.cs文件中创立以下类。
publicclassAuthor
{
publicstringFirstName{get;set;}
publicstringLastName{get;set;}
publicstringPhoneNumber{get;set;}
publicstringEmail{get;set;}
}
下列代码片段表明晰您怎么创立Author类的实例并为其特点赋予值。
Authorauthor=newAuthor();
author.FirstName=”Joydip”;
author.LastName=””;
author.PhoneNumber=”1234567890″;
author.Email=”joydipkanjilal@yahoo.com”;
您能够在Program.cs文件的Main办法中编写下列代码片段,以验证模型。
ValidationContextcontext=newValidationContext;
ListvalidationResults=newList();
boolvalid=Validator.TryValidateObject;
if
{
foreach
{
Console.WriteLine;
}
}
ValidationContext这个类为您供给了进行验证所在的上下文。如果验证成功,Validator类的TryValidateObject静态办法回来true,否则回来false。它还回来ValidationResults列表,详细列出该模型未经过的一切验证。最后,我们运用foreach循环来迭代处理ValidationResults列表,在控制台窗口显现过错音讯。
完整的代码片段如下所示,供您参阅。
publicclassAuthor
{
publicstringFirstName{get;set;}
publicstringLastName{get;set;}
publicstringPhoneNumber{get;set;}
publicstringEmail{get;set;}
}
classProgram
{
staticvoidMain
{
Authorauthor=newAuthor();
author.FirstName=”Joydip”;
author.LastName=””;//Novalueentered
author.PhoneNumber=”1234567890″;
author.Email=”joydipkanjilal@yahoo.com”;
ValidationContextcontext=newValidationContext
;
ListvalidationResults=new
List();
boolvalid=Validator.TryValidateObject
;
if
{
foreach
{
Console.WriteLine;
}
}
Console.ReadKey();
}
}
执行程序后,应该会看到控制台窗口显现的下列过错音讯:
LastNameisrequired
在C#中创立自界说验证特点
想创立自界说验证特点类,您应该扩展ValidationAttribute基础类,并覆盖IsValid办法,如下列代码片段所示。
publicclassIsEmptyAttribute:ValidationAttribute
{
publicoverrideboolIsValid
{
varinputValue=valueasstring;
return!string.IsNullOrEmpty;
}
}
下列代码片段表明晰你怎么能够运用自界说特点来装修Author类的FirstName和LastName特点。
publicstringFirstName{get;set;}
publicstringLastName{get;set;}
数据注释最初作为System.ComponentModel.DataAnnotations命名空间的一部分而引入到.NET3.5中。此后,它已成为.NET中一种广泛运用的功用。你能够充分利用数据注释在单单一处界说数据验证规矩,因而没必要一再重写同样的验证代码。