向EDMX生成的C#partial类添加新属性时的编译错误

时间:2017-01-18 12:05:13

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

我已经从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中的Primary Key链接的子表。在此表中是一个字符串,其中包含配置文件的图像文件名。

我希望能够在此类中添加一个附加属性,以便在文件名之前预先挂起文件夹结构,我尝试了以下操作,但是我收到了编译错误: -

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

错误非常明显:个人资料在&#39; XXX&#39;之间是不明确的。和&#39; YYY&#39;。但它们是两个部分类,我认为这可行吗?如何修改它以将自己的属性添加到EDMX的DB生成的类中?

提前致谢!

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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

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

感谢大家的意见!