0

これは学術的な目的のためです。

Home.aspx というページがあり、Home.aspx.cs の後ろにコードがあるとします。

Home.aspx.cs には、いくつかのパブリック プロパティがあります。

public string Name { get; set; }

Error.aspx という別のページがあります。

Error.aspx.cs 内から Home.aspx.cs のインスタンスを作成し、Name プロパティにアクセスできますか? そうでない場合は、なぜですか。

4

3 に答える 3

1

Error.aspx.cs 内から Home.aspx.cs のインスタンスを作成し、Name プロパティにアクセスできますか? そうでない場合は、なぜですか。

はい、できます...

于 2013-01-09T18:58:52.480 に答える
1

Error.aspx.cs 内から Home.aspx.cs のインスタンスを作成し、Name プロパティにアクセスできますか?

はい、他のオブジェクトと同様にインスタンスを作成できます。できるよ:

Home h = new Home();
h.Name = "Hello;

しかし、それは新しいインスタンスであり、内部にユーザー固有のデータはありません...つまり、ユーザーが見た「実際の」ページのインスタンスではありません

あなたの次の質問は次のようなものになると思います-ErrorページからHomeページにアクセスした場合、プロパティにアクセスできますか? 簡単な答えはノーです。

ページ間でデータを渡したい場合は、Sessionオブジェクト、Cache、またはその他の同様の概念を使用する必要があります。

于 2013-01-09T18:59:03.560 に答える
1

ユーザーがエラー ページにリダイレクトされた後、ホーム ページのコントロールから値を取得しようとしている場合は、PreviousPage.FindControl() メソッドを使用することもできます...

TextBox txt = (TextBox)Page.PreviousPage.FindControl("SomeText");

また

string str = (TextBox)Page.PreviousPage.FindControl("SomeText").Text;

ここで、「SomeText」は読み取り元のコントロールの ID 値です。

于 2013-01-10T03:40:51.933 に答える