C# 强类型数据上下文必须声明正文错误

C# 强类型数据上下文必须声明正文错误,c#,.net,datacontext,sqlconnection,C#,.net,Datacontext,Sqlconnection,收到此错误: Error 4 'ZoneUpdates.Models.PgeDataContext.PgeDataContext(string, System.Data.Linq.Mapping.MappingSource)' must declare a body because it is not marked abstract, extern, or partial C:\Code\ZoneUpdates\ZoneUpdates\Models\PgeDataContext.c

收到此错误:

Error   4   'ZoneUpdates.Models.PgeDataContext.PgeDataContext(string, System.Data.Linq.Mapping.MappingSource)' must declare a body because it is not marked abstract, extern, or partial    C:\Code\ZoneUpdates\ZoneUpdates\Models\PgeDataContext.cs    18  16  ZoneUpdates
Error   6   'ZoneUpdates.Models.ZoneObject.SendPropertyChanged(string)' must declare a body because it is not marked abstract, extern, or partial   C:\Code\ZoneUpdates\ZoneUpdates\Models\PgeDataContext.cs    42  32  ZoneUpdates
这四个类之间基本上有13个错误(下面显示了两个)

我使用的是4.0,我基本上是从另一个项目复制并粘贴了这段代码,在那里它可以正常工作。我试着把课程改成部分课程,但没有效果。任何指点都很感激

[Database(Name = "Pge_Dev")]
public class PgeDataContext : DataContext
{
    public PgeDataContext(IDbConnection connection);
    public PgeDataContext(string dsn);
    public PgeDataContext(
              IDbConnection connection, 
              System.Data.Linq.Mapping.MappingSource mappingSource);
    public PgeDataContext(
              string connection, 
              System.Data.Linq.Mapping.MappingSource mappingSource);

    public Table<ZoneObject> ZoneObject { get; set; }
    public Table<ZoneObjType> ZoneObjType { get; set; }
    public Table<ZoneTypeBridge> ZoneTypeBridge { get; set; }
}

[Table(Name = "dbo.ZoneObject")]
public class ZoneObject : INotifyPropertyChanging, INotifyPropertyChanged
{
    public ZoneObject();

    [Column(Storage = "ID", DbType = "Int NOT NULL")]
    public int ID { get; set; }
    [Column(Storage = "Name", DbType = "nvarchar(30)")]
    public int Name { get; set; }
    [Column(Storage = "Value", DbType = "bigint")]
    public int Value { get; set; }
    [Column(Storage = "CancurrencyID", DbType = "Int NOT NULL")]
    public int ConcurrencyID { get; set; }

    public event PropertyChangedEventHandler PropertyChanged;
    public event PropertyChangingEventHandler PropertyChanging;

    protected virtual void SendPropertyChanged(string propertyName);
    protected virtual void SendPropertyChanging();
}
[数据库(Name=“Pge\u Dev”)]
公共类PgeDataContext:DataContext
{
公共PgeDataContext(IDbConnection);
公共PgeDataContext(字符串dsn);
公共PgeDataContext(
IDB连接,
System.Data.Linq.Mapping.MappingSource(映射源);
公共PgeDataContext(
字符串连接,
System.Data.Linq.Mapping.MappingSource(映射源);
公共表区域对象{get;set;}
公共表ZoneObjType{get;set;}
公共表ZoneTypeBridge{get;set;}
}
[表(Name=“dbo.ZoneObject”)]
公共类区域对象:INotifyPropertyChanged、INotifyPropertyChanged
{
公共区域对象();
[列(Storage=“ID”,DbType=“Int NOT NULL”)]
公共int ID{get;set;}
[列(Storage=“Name”,DbType=“nvarchar(30)”)]
公共int名称{get;set;}
[列(Storage=“Value”,DbType=“bigint”)]
公共int值{get;set;}
[列(Storage=“CancurrencyID”,DbType=“Int NOT NULL”)]
公共int并发ID{get;set;}
公共事件属性更改事件处理程序属性更改;
公共事件属性更改EventHandler属性更改;
受保护的虚拟空间SendPropertyChanged(字符串propertyName);
受保护的虚拟void SendPropertyChanging();
}

错误示例

无体构造函数

public PgeDataContext(IDbConnection connection);
=>您必须声明一个实体

public PgeDataContext(IDbConnection connection){ /*blibli*/ }
无体方法

public PgeDataContext(IDbConnection connection);
受保护的虚拟空间SendPropertyChanged(字符串propertyName)

=>您必须声明非抽象、外部或部分方法的主体,如错误消息中所述

受保护的虚拟空间SendPropertyChanged(字符串propertyName){
/*布拉布拉*/

}

这显然是正确的答案,我只是在寻找是否还有其他可以让我做的事情,因为如前所述,这是从另一个项目中获得的。可能还有更多的代码要做,但我尽可能深入研究,这似乎就是所使用的所有内容。@mgaughan:编写的代码是无效的C#,永远不会工作。但是,代码是否可能是从
抽象类
复制的?在这种情况下,它将更接近有效。@DanPuzey这正是我在这里想要了解的。我认为这是某种继承或抽象,但我找不到确切的说法来说明这一点。谢谢