2012-12-19 32 views
5

Bazı parametreler geçirmeye çalıştığım bir ObjectDataSource var. I GetAllCountries Yöntem pageSize = -1, cihazı ayıklanmış zaman Neden ObjectDataSource doğru parametre değerini göndermiyor?

GridDataSource.SelectMethod = "GetAllCountries"; 
GridDataSource.SelectParameters.Add("PageSize", pageSize.ToString()); 
GridDataSource.SelectParameters.Add("OrderBy", orderBy); 
GridDataSource.SelectParameters.Add("StartIndex", startIndex.ToString()); 

ve yöntemimin/App_Code/DAL içinde CountriesDB.CS
public List<Countries> GetAllCountries(int PageSize,string OrderBy,int StartIndex) 
{ 
.......... 
} 

olduğu; OrderBy = "", startIndex'ten = 0 geçirilir. ..burada neler oluyor?? O tarafa deneyebilirsiniz

cevap

0

önceden

thnx

...:

GridDataSource.SelectMethod = "GetAllCountries"; 
Parameter p1 = new Parameter("PageSize",TypeCode.Int32); 
Parameter p2 = new Parameter("OrderBy",TypeCode.String); 
Parameter p3 = new Parameter("StartIndex",TypeCode.Int32); 
GridDataSource.SelectParameters.Add(p1); 
GridDataSource.SelectParameters.Add(p2); 
GridDataSource.SelectParameters.Add(p3); 
0

Ben genellikle ben ObjectDataSourceMethodEventArgs e içinde InputParmeters koleksiyonunu değiştirebilir ObjectDataSource's Selecting event, abone:

e.InputParameters["PageSize"] = pageSize; // pageSize is an int in your select method 
e.InputParameters["OrderBy"] = orderBy; 
e.InputParameters["StartIndex"] = startIndex; // startindex is an int too 

Ayrıca, parametre değerlerinin dizge olması gerekmez. Seçme yönteminin parametreleriyle eşleşmelidirler.

GridDataSource.SelectMethod = "GetAllCountries"; // code 

... ya işaretlemesinde:

<asp:ObjectDataSource ... SelectMethod="GetAllCountries" /> // markup 
+0

bir hata alınıyor: SelectMethod belirtilmedikçe Seç operasyon ObjectDataSource 'GridDataSource' tarafından desteklenmemektedir. –

+0

@TamalKantiDey Bunu belirtmeniz gerekiyor. Gönderiyi düzenledim. –

+0

yea ... tryd it .... çalışmıyor .... –

4

ait Selecting olayı Kulp

seçme yöntemi (senin soru yaptığı gibi) kodunda ya belirtilmelidir GridDataSource ve parametrelerinizi buraya girin.

protected void GridDataSource_Selecting(object sender, ObjectDataSourceSelectingEventArgs e) 
{  
    GridDataSource.SelectMethod = "GetAllCountries";    
    e.InputParameters.Clear(); 
    e.InputParameters.Add("PageSize", pageSize.ToString()); 
    e.InputParameters.Add("OrderBy", orderBy); 
    e.InputParameters.Add("StartIndex", startIndex.ToString());   
} 
+0

bu hatayı alıyorum: SelectMethod belirtilmediği sürece Seç operasyon ObjectDataSource 'GridDataSource' tarafından desteklenmeyen . –

+0

Bu gönderinin http://www.eranachum.com/PermaLink, guid,089badbf-c01c-4363-a236-617ccf85ce3b.aspx yardımcı olup olmadığını öğrenin. – keyboardP

İlgili konular