簡體   English   中英

無法在主aspx文件的代碼隱藏頁面中調用數據管理器類的靜態方法

[英]Unable to call static method of data manager class in the code behind page of main aspx file

我正在嘗試做簡單的數據輸入。 我有我的aspx文件,用於App_Code文件夾中的輸入和數據管理器文件,以與數據實體進行交互。 我有“靜態”添加方法,但我不能使用“using dataModel”行添加模型文件,並且無法在代碼后面調用靜態方法...

我錯過了什么?

main.aspx.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using dataModel;     // <------------- cant add this one..gives error

public partial class test : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        dataManager em = new dataManager();
        em.add(...)
    }
}

dataManager.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

public class dataManager
{

    // Add a new customer
    public static void add(...)
    {
    .
    .
    .

不在實例上調用靜態方法。 以下將有效:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class test : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        dataManager.add(...);
    }
}

Methof add是靜態方法,所以試試這個:

dataManager.add(..);

打電話吧

protected void Button1_Click(object sender, EventArgs e)
{
    dataManager.Add(..);
}

你應該仔細看看

靜態類和靜態類成員(C#編程指南)

您無需實例化dataManger即可調用靜態方法。

您可以像這樣調用方法striaht

dataManager.add(..); 

沒有名為dataModel的命名空間,因此using語句沒有意義。 您的dataManager類位於您發布的代碼中的全局命名空間中。

正如其他人提到的,沒有必要創建一個dataManager實例來調用靜態方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM