Aracılığıyla paylaş


HttpServerUtility.Transfer Yöntem

Tanım

Geçerli sayfanın yürütülmesini sonlandırır ve geçerli istek için yeni bir sayfanın yürütülmesini başlatır.

Aşırı Yüklemeler

Transfer(String)

Geçerli istek için geçerli sayfanın yürütülmesini sonlandırır ve sayfanın belirtilen URL yolunu kullanarak yeni bir sayfanın yürütülmesini başlatır.

Transfer(String, Boolean)

Geçerli sayfanın yürütülmesini sonlandırır ve sayfanın belirtilen URL yolunu kullanarak yeni bir sayfanın yürütülmesini başlatır. QueryString ve Form koleksiyonlarının temizlenip temizlenmeyeceğini belirtir.

Transfer(IHttpHandler, Boolean)

Geçerli sayfanın yürütülmesini sonlandırır ve IHttpHandler arabirimini uygulayan özel bir HTTP işleyicisi kullanarak yeni bir isteğin yürütülmesini başlatır ve QueryString ve Form koleksiyonlarının temizlenip temizlenmeyeceğini belirtir.

Transfer(String)

Geçerli istek için geçerli sayfanın yürütülmesini sonlandırır ve sayfanın belirtilen URL yolunu kullanarak yeni bir sayfanın yürütülmesini başlatır.

public:
 void Transfer(System::String ^ path);
public void Transfer (string path);
member this.Transfer : string -> unit
Public Sub Transfer (path As String)

Parametreler

path
String

Yürütülecek sunucudaki yeni sayfanın URL yolu.

Açıklamalar

Aktarıldığı sayfa başka bir .aspx sayfası olmalıdır. Örneğin, bir .asp veya .asmx sayfasına aktarım geçerli değildir. Transfer yöntemi QueryString ve Form koleksiyonlarını korur.

Transfer, tamamlandıktan sonra ThreadAbortException özel durum oluşturan Endçağırır.

ASP.NET, geçerli kullanıcının Transfer yöntemi tarafından teslim edilen kaynağı görüntüleme yetkisine sahip olduğunu doğrulamaz. ASP.NET yetkilendirme ve kimlik doğrulama mantığı özgün kaynak işleyici çağrılmadan önce çalıştırılsa da, ASP.NET doğrudan Transfer yöntemi tarafından belirtilen işleyiciyi çağırır ve yeni kaynak için kimlik doğrulaması ve yetkilendirme mantığını yeniden çalıştırmaz. Uygulamanızın güvenlik ilkesi istemcilerin kaynağa erişmek için uygun yetkilendirmeye sahip olmasını gerektiriyorsa, uygulama yeniden kimlik doğrulamayı zorlamalı veya özel bir erişim denetimi mekanizması sağlamalıdır.

Transfer yöntemi yerine Redirect yöntemini kullanarak yeniden kimlik doğrulamaya zorlayabilirsiniz. Redirect yöntemi, tarayıcının yeni kaynağı istediği bir istemci tarafı yeniden yönlendirmesi gerçekleştirir. Bu yeniden yönlendirme sisteme giren yeni bir istek olduğundan, hem Internet Information Services (IIS) hem de ASP.NET güvenlik ilkesinin tüm kimlik doğrulaması ve yetkilendirme mantığına tabidir.

Uygulama Transfer yöntemini çağırmadan önce IsInRole yöntemini kullanan özel bir yetkilendirme yöntemi ekleyerek kullanıcının kaynağı görüntüleme iznine sahip olduğunu doğrulayabilirsiniz.

Şunlara uygulanır

Transfer(String, Boolean)

Geçerli sayfanın yürütülmesini sonlandırır ve sayfanın belirtilen URL yolunu kullanarak yeni bir sayfanın yürütülmesini başlatır. QueryString ve Form koleksiyonlarının temizlenip temizlenmeyeceğini belirtir.

public:
 void Transfer(System::String ^ path, bool preserveForm);
public void Transfer (string path, bool preserveForm);
member this.Transfer : string * bool -> unit
Public Sub Transfer (path As String, preserveForm As Boolean)

Parametreler

path
String

Yürütülecek sunucudaki yeni sayfanın URL yolu.

preserveForm
Boolean

QueryString ve Form koleksiyonlarını korumak için true; QueryString ve Form koleksiyonlarını temizlemek için false.

Özel durumlar

Geçerli sayfa isteği bir geri çağırmadır.

Örnekler

Aşağıdaki örnek, geçerli sayfayla aynı dizinde yeni bir sayfa yürütür.

Server.Transfer("Logon.aspx", true);

Server.Transfer("Logon.aspx", true)

Açıklamalar

Aktarıldığı sayfa başka bir .aspx sayfası olmalıdır. Örneğin, bir .asp veya .asmx sayfasına aktarım geçerli değildir.

Transfer, tamamlandıktan sonra ThreadAbortException özel durum oluşturan Endçağırır.

preserveForm parametresini trueolarak ayarlarsanız, hedef sayfa PreviousPage özelliğini kullanarak önceki sayfanın görünüm durumuna erişebilir.

Güvenlik amacıyla enableViewStateMac özniteliğini trueolarak ayarlamanız gerekir. ASP.NET, geçerli kullanıcının Transfer yöntemi tarafından teslim edilen kaynağı görüntüleme yetkisine sahip olduğunu doğrulamaz. ASP.NET yetkilendirme ve kimlik doğrulama mantığı özgün kaynak işleyici çağrılmadan önce çalıştırılsa da, ASP.NET doğrudan Transfer yöntemi tarafından belirtilen işleyiciyi çağırır ve yeni kaynak için kimlik doğrulaması ve yetkilendirme mantığını yeniden çalıştırmaz. Uygulamanızın güvenlik ilkesi istemcilerin kaynağa erişmek için uygun yetkilendirmeye sahip olmasını gerektiriyorsa, uygulama yeniden kimlik doğrulamayı zorlamalı veya özel bir erişim denetimi mekanizması sağlamalıdır.

Transfer yöntemi yerine Redirect yöntemini kullanarak yeniden kimlik doğrulamaya zorlayabilirsiniz. Redirect yöntemi, tarayıcının yeni kaynağı istediği bir istemci tarafı yeniden yönlendirmesi gerçekleştirir. Bu yeniden yönlendirme sisteme giren yeni bir istek olduğundan, hem Internet Information Services (IIS) hem de ASP.NET güvenlik ilkesinin tüm kimlik doğrulaması ve yetkilendirme mantığına tabidir.

Uygulama Transfer yöntemini çağırmadan önce IsInRole yöntemini kullanan özel bir yetkilendirme yöntemi ekleyerek kullanıcının kaynağı görüntüleme iznine sahip olduğunu doğrulayabilirsiniz.

Şunlara uygulanır

Transfer(IHttpHandler, Boolean)

Geçerli sayfanın yürütülmesini sonlandırır ve IHttpHandler arabirimini uygulayan özel bir HTTP işleyicisi kullanarak yeni bir isteğin yürütülmesini başlatır ve QueryString ve Form koleksiyonlarının temizlenip temizlenmeyeceğini belirtir.

public:
 void Transfer(System::Web::IHttpHandler ^ handler, bool preserveForm);
public void Transfer (System.Web.IHttpHandler handler, bool preserveForm);
member this.Transfer : System.Web.IHttpHandler * bool -> unit
Public Sub Transfer (handler As IHttpHandler, preserveForm As Boolean)

Parametreler

handler
IHttpHandler

Geçerli isteği aktarmak için IHttpHandler uygulayan HTTP işleyicisi.

preserveForm
Boolean

QueryString ve Form koleksiyonlarını korumak için true; QueryString ve Form koleksiyonlarını temizlemek için false.

Özel durumlar

Geçerli sayfa isteği bir geri çağırmadır.

Açıklamalar

Ortak Dil Belirtimi (CLS) ile uyumlu herhangi bir dilde belirli, önceden tanımlanmış HTTP isteği türlerini işlemek için özel HTTP işleyicileri yazabilirsiniz. Geleneksel ASP (klasik ASP olarak da bilinir) sayfaları veya ASP.NET sayfaları yerine HTTP işleyici sınıflarında tanımlanan yürütülebilir kod bu isteklere yanıt verir. HTTP işleyicileri, Internet Information Services (IIS) çalıştıran bir Web sunucusunun alt düzey istek ve yanıt hizmetleriyle etkileşime olanak tanır ve ISAPI uzantılarına benzer ancak daha basit bir programlama modeliyle işlevsellik sağlar.

preserveForm parametresini trueolarak ayarlarsanız, hedef sayfa PreviousPage özelliğini kullanarak önceki sayfanın görünüm durumuna erişebilir.

Güvenlik amacıyla enableViewStateMac özniteliğini trueolarak ayarlamanız gerekir. ASP.NET, geçerli kullanıcının Transfer yöntemi tarafından teslim edilen kaynağı görüntüleme yetkisine sahip olduğunu doğrulamaz. ASP.NET yetkilendirme ve kimlik doğrulama mantığı özgün kaynak işleyici çağrılmadan önce çalıştırılsa da, ASP.NET doğrudan Transfer yöntemi tarafından belirtilen işleyiciyi çağırır ve yeni kaynak için kimlik doğrulaması ve yetkilendirme mantığını yeniden çalıştırmaz. Uygulamanızın güvenlik ilkesi istemcilerin kaynağa erişmek için uygun yetkilendirmeye sahip olmasını gerektiriyorsa, uygulama yeniden kimlik doğrulamaya zorlamalı veya özel bir erişim denetimi mekanizması sağlamalıdır.

Transfer yöntemi yerine Redirect yöntemini kullanarak yeniden kimlik doğrulamaya zorlayabilirsiniz. Redirect yöntemi, tarayıcının yeni kaynağı istediği bir istemci tarafı yeniden yönlendirmesi gerçekleştirir. Bu yeniden yönlendirme sisteme giren yeni bir istek olduğundan, hem IIS hem de ASP.NET güvenlik ilkesinin tüm kimlik doğrulaması ve yetkilendirme mantığına tabidir.

Uygulama Transfer yöntemini çağırmadan önce IsInRole yöntemini kullanan özel bir yetkilendirme yöntemi ekleyerek kullanıcının kaynağı görüntüleme iznine sahip olduğunu doğrulayabilirsiniz.

Şunlara uygulanır