首页 > 解决方案 > 有没有办法在 C# 的部分类中编写相同的属性名称?

问题描述

我的自动生成的类

public partial class Address
{
    public int Id { get; set; }

    public string Name { get; set; }
}

我想要以下输出。而且我在部分类中没有使用相同的属性名称。那么我怎样才能达到我的结果呢?有没有其他方法。

public partial class Address

{
   public string Name  => Name + " ";
}

标签: c#asp.net-mvcooppartial-classes

解决方案


这是不可能的,而且真的没有任何意义。部分类只是拆分单个类的一种方式。在您的示例中,这相当于拥有

public partial class Address
{
    public int Id { get; set; }

    public string Name { get; set; }

    public string Name  => Name + " ";
}  

这显然不会编译。即使这样做了,Name尝试访问自身的事实也会立即引起问题。

根据您的评论,您只需要在Name属性末尾添加一个空格即可。由于该类是自动生成的,因此您需要添加一个具有不同名称的新属性,例如:

public partial class Address
{
   public string NamePlusSpace  => Name + " ";
}

推荐阅读