如何使用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中一種普遍運用的功用。你可以充分利用數據註釋在單單一處界說數據驗證規矩,於是不必一再重寫一樣的驗證代碼。ide

相關文章
相關標籤/搜索