![](/img/trans.png)
[英]I want to prevent update of FirstName and LastName property which belongs to an object using Asp.net core fluent validations
[英]Consolidate FirstName/LastName into FullName ASP.NET Core Identity
我在ASP.NET Core 2.0中使用EF Core代碼優先模型。
為了簡化模型,我嘗試合並ApplicationUser
模型的FirstName
和LastName
字段:
public class ApplicationUser : IdentityUser<int>
...
public string FirstName { get; set; }
public string LastName { get; set; }
...
至
...
public string FullName { get; set; }
...
但是,當我提供種子數據時:
...
FullName = "Test McTesterson"
SQL Server僅保存姓氏。
我的假設是,可以使用某種屬性來修飾字段以在字符串中包含兩個名稱?
提前致謝。
如果目標是簡化模型的使用 ,我建議實施一個計算字段改為:
public string FullName
{
get { return string.Format("{0} {1}", FirstName, LastName); }
}
如果您想變得更高級,可以添加一種允許格式化的方法:
public string GetFullName(string format)
{
return string.Format(format, FirstName, LastName);
}
用法示例:
var name = user.GetFullName("{0} {1}"); //returns John Doe
var name2 = user.GetFullName("{1}, {0}"); //returns Doe, John
正如其他人所說,計算字段是必經之路。 但是,對我來說,最干凈的解決方案是對表達式主體使用字符串插值:
public string FullName => $"{FirstName} {LastName}";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.