ObjectDataSource.SelectMethod Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Denetimin verileri almak için çağırdığını yöntem veya işlevin ObjectDataSource adını alır veya ayarlar.
public:
property System::String ^ SelectMethod { System::String ^ get(); void set(System::String ^ value); };
public string SelectMethod { get; set; }
member this.SelectMethod : string with get, set
Public Property SelectMethod As String
Özellik Değeri
veri almak için kullandığı yöntemin veya işlevin ObjectDataSource adını temsil eden bir dize. Varsayılan değer, boş dizedir ("").
Örnekler
Aşağıdaki kod örneği, bir GridView denetimin Web Forms sayfasındaki bir ObjectDataSource denetimi kullanarak verileri nasıl görüntüleyebileceğini gösterir. , ObjectDataSource özelliğiyle kısmen veya tam sınıf adını ve özelliğiyle TypeNameSelectMethod veri almak için çağrılan bir yöntemi tanımlar. Çalışma zamanında nesnesi oluşturulur ve yansıma kullanılarak yöntemi çağrılır. Denetim, GridView özelliği tarafından SelectMethod belirtilen yöntemi tarafından döndürülen koleksiyonda IEnumerable numaralandırılır ve verileri görüntüler.
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="Samples.AspNet.CS" %>
<%@ Page language="c#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ObjectDataSource - C# Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:gridview
id="GridView1"
runat="server"
datasourceid="ObjectDataSource1" />
<asp:objectdatasource
id="ObjectDataSource1"
runat="server"
selectmethod="GetAllEmployees"
typename="Samples.AspNet.CS.EmployeeLogic" />
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB" Assembly="Samples.AspNet.VB" %>
<%@ Page language="vb" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ObjectDataSource - Visual Basic Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:gridview
id="GridView1"
runat="server"
datasourceid="ObjectDataSource1" />
<asp:objectdatasource
id="ObjectDataSource1"
runat="server"
selectmethod="GetAllEmployees"
typename="Samples.AspNet.VB.EmployeeLogic" />
</form>
</body>
</html>
Açıklamalar
Belirtilen yöntemin herhangi bir yöntem imzası olabilir, ancak denetimin başarıyla çağırması için aşağıdaki tabloda gösterilen türlerden birini döndürmesi ObjectDataSource gerekir.
Dönüş türü | Eylem |
---|---|
IEnumerable | IEnumerable yöntemi tarafından Select döndürülür. |
DataTable | yöntemi DataView tarafından Select döndürülen ve kullanılarak DataTable oluşturulur. |
DataView | DataView yöntemi tarafından Select döndürülür. |
DataSet | öğesinin ilki DataTableDataSet ayıklanır ve yöntemi tarafından Select oluşturulur DataView ve döndürülür. |
Object | nesnesi tek öğeli IEnumerable bir koleksiyonda sarmalanır ve yöntemi tarafından Select döndürülür. |
özelliği, SelectMethod denetimle ilişkili nesnenin ObjectDataSourceView özelliğine temsilci SelectMethod atarObjectDataSource.
Verileri silmek veya güncelleştirmek için sınıfını ObjectDataSource kullandığınızda, koleksiyon veya UpdateParameters koleksiyondaki DeleteParameters denetim için ObjectDataSource yapılandırılan parametre adlarının seçme yöntemi tarafından döndürülen sütun adlarla eşleştiğinden emin olun.
Nesne Ömrü
özelliği tarafından SelectMethod tanımlanan yöntem bir örnek yöntemi veya static
(Shared
Visual Basic'te) yöntemi olabilir. Bu bir örnek yöntemiyse, özelliği tarafından SelectMethod belirtilen yöntem her çağrıldığında iş nesnesi oluşturulur ve yok edilir. özelliği tarafından belirtilen yöntem çağrılmadan önce iş nesnesiyle çalışmak için ve ObjectCreating olaylarını SelectMethod işleyebilirsinizObjectCreated. Özelliği tarafından SelectMethod belirtilen yöntem çağrıldıktan sonra oluşturulan olayı da işleyebilirsinizObjectDisposing. İş nesnesi arabirimini uygularsa IDisposable , Dispose nesne yok edilmeden önce yöntemi çağrılır. Yöntem (Shared
Visual Basic'te) ise static
, iş nesnesi hiçbir zaman oluşturulmaz ve , ObjectCreatingve ObjectDisposing olaylarını ObjectCreatedişleyemezsiniz.
Parametre Birleştirme
Parametreler koleksiyona SelectParameters şu kaynaklardan eklenir:
öğesinden bildirim temelli
SelectParameters
olarak.yönteminden
Selecting
program aracılığıyla.
İlk olarak, öğesinde SelectParameters
listelenen parametreler eklenir. İkincisi, yöntem çalıştırılmadan önce Select gerçekleşen olayda Selecting parametreler program aracılığıyla eklenir ve kaldırılır. yöntemi, parametreler birleştirildikten sonra çözümlenir. Yöntem çözümlemesi sonraki bölümde açıklanmıştır.
Önemli
İstemciden aldığınız tüm parametre değerlerini doğrulamanız gerekir. Çalışma zamanı yalnızca parametre değerini özelliğiyle değiştirmektedir SelectMethod .
Yöntem Çözümleme
Select yöntemi çağrıldığında, veriye bağlı denetimdeki veri alanları, öğesinde SelectParameters
bildirim temelli olarak oluşturulan parametreler ve olay işleyicisine eklenen parametrelerin Selecting tümü birleştirilir. (Daha fazla bilgi için önceki bölüme bakın.) Denetim ObjectDataSource daha sonra çağrılacak bir yöntem bulmaya çalışır. İlk olarak, özelliğinde SelectMethod belirtilen ada sahip bir veya daha fazla yöntem arar. Eşleşme bulunmazsa bir InvalidOperationException özel durum oluşturulur. Eşleşme bulunursa eşleşen parametre adlarını arar. Örneğin, özelliği tarafından belirtilen bir türün TypeName adlı SelectARecord
iki yöntemi olduğunu varsayalım. Birinin SelectARecord
bir parametresi ID
, diğerinde SelectARecord
ise ve şeklinde iki parametresi vardır Name
Number
. Koleksiyonun SelectParameters adlı ID
tek bir parametresi varsa, SelectARecord
yalnızca parametresine ID
sahip yöntemi çağrılır. Parametrelerin türü, yöntemlerin çözümünde denetlenmedi. Parametrelerin sırası önemli değildir.
DataObjectTypeName özelliği ayarlanırsa yöntemi farklı bir şekilde çözümlenir. , ObjectDataSource özelliğinde belirtilen türde bir parametre alan özelliğinde SelectMethodDataObjectTypeName belirtilen ada sahip bir yöntem arar. Bu durumda, parametrenin adı önemli değildir.
Şunlara uygulanır
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin