【问题标题】:Compilation errors when adding new properties to C# partial class generated by an EDMX [duplicate]向 EDMX 生成的 C# 部分类添加新属性时出现编译错误 [重复]
【发布时间】:2017-06-02 19:20:16
【问题描述】:

我有一个从 SQL Server 数据库生成的 EDMX 图。它生成一个部分类,如下所示:-

public partial class Profile
{
    public Profile()
    {
        // Constructor Info here
    }

    // Various string/int/bit properties
    public virtual ICollection<ProfileImage> ProfileImages { get; set; }
}

底部的 ICollection 是通过 Profile 中的主键链接的子表。此表中有一个字符串,其中包含配置文件的图像文件名。

我希望能够向这个类添加一个附加属性,以便在文件名之前添加一个文件夹结构,我尝试了以下方法,但出现编译错误:-

public partial class Profile
{
    public string ImageFileName { get; set; }
    public string ProfileImageURL
    {
        get
        {
            return "~/images/folder/folder/" + this.ImageFileName;
        }
    }
}

错误很明显:“XXX”和“YYY”之间的配置文件不明确。但它们是两个部分类,我认为这可行吗?如何修改它以将我自己的属性添加到从 EDMX 生成的数据库类中?

提前致谢!

【问题讨论】:

  • HI ..从 EDMX 扩展一些东西我建议你在另一个文件中使用部分类
  • 谢谢大家。是的,重复,没有意识到命名空间是这里的问题。我理解你可以在整个项目中拥有两个同名的部分类,而不仅仅是命名空间。

标签: c# .net asp.net-mvc edmx partial-classes


【解决方案1】:

两个分部类应该有相同的命名空间

【讨论】:

  • 刚刚找到这个。我更改了相同的命名空间,它可以工作。
【解决方案2】:

所以我发现,如果生成了原始分部类,那么只要第二个分部类具有与@Hanna Haddad 所说的相同的命名空间,就可以使用我自己的属性创建另一个分部类。

namespace MyProject.Models
{
    public partial class Profile
    {
        public string ProfileImageURL
        {
            get
            {
                return "~/images/folder/folder/" + this.ImageFileName;
            }
        }
    }
}

感谢大家的意见!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-21
    • 1970-01-01
    • 1970-01-01
    • 2021-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多