.NET 中国际化名称对象的结构或 class?

Struct or class for internationalized name object in .NET?

我有一个人 class,我目前正在尝试添加名称属性, 作为 class 或作为结构。背景是,在全球范围内思考,并不是每个人的名字都必须由名字和姓氏组成。所以我决定让它更具原子性,并创建一个新的通用 "Name" class 或 struct.

因为名称的每个部分都会单独保存在 "Name" class 或结构中,所以我通常更喜欢结构而不是 class。

为了更实用:

"John Doe" 将保存为名称结构 "John" 和名称结构 "Doe".

这作为背景。

现在,我想添加 属性,如果该名称是否已验证:

public struct Name
{
    private string _name;

    public bool Verified { get; set; }

    public String(string name)
    {
        this._name = name;
    }

    public static implicit operator String(string name)
    {
        return new Name(name);
    }

}

这是实现它的正确(通用)方法吗? 当您有建议时,请告诉我:)

我觉得你把事情搞得太复杂了。只需让一个人拥有一个名为 Name 的 属性。

验证的目的是什么?