0

ASP.NETは初めてです。

私は立ち往生しているので、これについては本当に助けが必要です。私はグーグルでたくさんの読書をしました、そして、私が何を間違えたかを理解することができませんでした。

エラー:CS0103:名前'MyClass'は現在のコンテキストに存在しません

MyClass.csファイルがあり、このファイルのどのページでもその関数を再利用したいと思っています。

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

namespace MyNameSpace
{
    public static class MyClass
    {

        //
        // TODO: Add constructor logic here
        //

        public static string FormatDateNoTime(string input)
        {
            string thedate;
            DateTime strDate = DateTime.Parse(input);
            thedate = strDate.ToString("MM/dd/yyyy");
            return thedate;
        }

        public static string test()
        {
            return "1234";
        }

    }
}

別のPage2.aspx.csがこの関数を呼び出しますが、エラーが発生します

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Configuration;
using System.Data.SqlClient;
using System.Data;

using MyNameSpace;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write(MyClass.FormatDateNoTime("02/01/2012"));
    }
}

誰か助けてください、私は単にこの関数を任意のページで再利用したいだけです。

4

3 に答える 3

0

私も同じ問題を抱えていました。VSの再起動に関する問題を解決しました。再起動後、問題のあるクラスを含む cs ファイルがプロジェクトに表示されませんでした。ソリューション エクスプローラーのプロジェクトにファイルを再度追加し、完全なプロジェクトをビルドしました。

于 2016-12-20T08:20:30.180 に答える
0

これが私の提案です

  • 呼び出し元クラスMyClassを含めるか、両方を使用して名前空間をインポートする必要があり、呼び出されるクラスは同じ名前空間に属している必要がありますusing namespaceOfMyClass

  • クラスがデフォルトでコンパイルされない場合があります。ソリューション エクスプローラーでファイルを右クリックし、[プロパティ] をクリックします。プロパティを確認Build Actionし、「コンパイル」と表示されていることを確認します

  • 最上位レベルからプロジェクトをビルドします。例: Solution

于 2012-10-19T23:35:46.090 に答える
0

これで:

Response.Write(MyClass.FormatDateNoTime("02/01/2012"));

を右クリックしMyClassて「解決」を選択します。これには、名前空間を追加するか、タイプの完全修飾名を使用するオプションが含まれている必要があります。

解決が存在しない場合は、Page2.aspx.cs を含むアセンブリから MyClass.cs を含むアセンブリへの参照を追加します。

于 2012-10-20T00:45:28.443 に答える