【发布时间】:2010-07-28 16:11:30
【问题描述】:
我创建了以下课程。但是,我无法克服错误:
必须声明一个主体,因为它没有被标记为抽象、外部或部分
类如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Runtime.CompilerServices;
namespace VDSORDAL
{
public abstract class ObjectComparer<T> : IComparer<T>
{
public ObjectComparer(string compareField, string direction);
private string compareField;
public string CompareField
{
get { return compareField; }
set { compareField = value; }
}
public string Direction
{
get { return compareField; }
set { compareField = value;}
}
public abstract int Compare(T x, T y);
}
}
有人能以我的方式指出错误,并简要解释一下我做错了什么以及为什么会引发此错误吗?
【问题讨论】:
-
您的 Direction 属性看起来不正确。我认为你需要一个“私人字符串方向”;就像 compareField 的一样。然后将 Direction 属性中的 compareField 替换为方向。
-
没有。 Direction 属性很好。
-
基本上,您不能有抽象构造函数——只需更改“;”到“{}”,它应该编译。
标签: c# class abstract-class