【发布时间】:2018-05-08 15:31:41
【问题描述】:
我在 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 服务器只保存姓氏。
我的假设是我可以使用某种属性来装饰我的字段以在字符串中包含两个名称?
提前致谢。
【问题讨论】:
-
您希望数据库中存在一个名为
FullName的字段吗?或者您只是想在客户端(也就是您的代码)上查看这两个字符串的连接? -
只创建一个持久计算列
-
如果您将全名设置为
Bob Andrew Smith,您期望会发生什么?名字和姓氏是不同的属性是有充分理由的 -
为什么数据库中有这样一个字段?这样做的目的是什么?
-
你没有简化任何事情。相反,正如其他人所建议的那样,当您必须处理奇怪的名称时,您将增加 [未来] 的复杂性。在下面查看我的答案,了解简化模型使用的替代方案。
标签: c# asp.net sql-server entity-framework