必须申报一个机构,因为它没有标记为抽象或外部? C#/ ASP.NET

时间:2011-03-24 14:15:16

标签: c# asp.net

我有一个正常的Web表单,后面有代码,在这个代码后面我可以实例化我在根文件夹中的几个类,例如:

public partial class _Default : System.Web.UI.Page

{
    Helper helper = new Helper();

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        Initialise();
    }
}

在助手班:

public class Helper
{

它工作正常但我现在想将我的类文件(例如Helper.cs)移动到app_code文件夹但是当我运行应用程序时我得到错误

SharePoint sharePoint = new SharePoint();

public string id { get; set; }

must declare a body because it is not marked abstract or extern

导致此问题的原因是什么?如何解决?

提前致谢

3 个答案:

答案 0 :(得分:2)

public string id { get; set; }

是一个自动属性,它们是在C#v3.0 / .Net v3.5中添加的,因此请确保您在项目设置中定位此版本或更高版本。如果您希望定位早期版本,则需要使用带有支持字段的属性。

答案 1 :(得分:0)

你有这个项目的TargetFramework =“3.5”吗?查看this post

答案 2 :(得分:0)

public string id { get; set;}

这一行是问题所在,上面已经回答了这个问题,但我正在添加一个带代码的aswer来说明如何为那些不熟悉C#的人提供支持字段。 这是public string id { get; set; }的支持字段的示例:

    private string p_id="";
    public string id {
        get {
            return p_id;
        }
        set {
            p_id = value;
        }
    }

请注意初始化的私有字符串p_id,其中包含公共字符串id的实际值。另请注意,value由编译器定义,并在此实例中强制转换为字符串。如果属性idint,则值将被转换为int(整数)而不是字符串。