我有一个名为Person.cs的Entity Framework生成的类,它位于名称空间Project.Model中。
然后我在项目中添加了一个名为Extensions的新文件夹,在其中添加了Person.cs,并将此文件的命名空间设置为Project.Model。
执行此操作后,我收到错误:
Type' Project.Model.Person'已经定义了一个名为' Person' 具有相同的参数类型。
我做错了什么?我需要扩展EF Person.cs以获得其他属性。
这是扩展Person.cs的代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Project.Model
{
public partial class Person
{
public Person()
{
}
}
}
答案 0 :(得分:4)
您应该从Person
类中删除默认构造函数:
public partial class Person
{
// add properties here
}
您的部分类是同一个类的一部分,因此与任何其他类定义一样 - 没有成员可以定义两次,包括构造函数。如果您将转到EF生成的Person
类,您将看到它已经具有默认构造函数(EF将其用于导航属性初始化)。