在asp.net gridview中排序问题 [英] sorting problem in asp.net gridview
问题描述
我正在开发一个网站,因为我已经为用户提供了通过创建用户视图动态生成网格结果的设施。
现在我的问题我不能对列进行排序。
i写这样的查询
SELECT Contact.cFirstName as [FIRST NAME],Contact.cEmail as [EMAIL ID],Contact.cPhone as [PHONE NO],Contact.cMobile as [MOBILE] FROM CompanyMaster RIGHT OUTER JOIN 联系人 ON CompanyMaster.nCompanyId = Contact.nContactId LEFT OUTER JOIN LeadSourceMa ster ON Contact.nLeadSource = LeadSourceMaster.nLeadSourceID
联系方式.cFirstName为[FIRST NAME],Contact.cEmail为[EMAIL ID],Contact.cPhone为[PHONE NO],Contact.cMobile为[MOBILE] 字段为dynamic.so我无法创建绑定字段。
i已经允许排序为gridview.if我将排序第一列然后给出错误
找不到列FIRST NAME。
pl帮我解决这个问题。
尝试这种方式排序在datatable ... :)
DataTable dtGetData = new DataTable ();
DataView dv = dtGetData.DefaultView;
dv.Sort = ColumnName + + ASC跨度>;
// 或(你可以动态传递)
dv.Sort = ColumnName + + DESC跨度>;
DataTable dtGetShipments = new DataTable();
dtGetShipments = dv.ToTable();
// 将此dtGetShipments数据表绑定到gridview
1.你应该更改与下一个类似的SQL字符串:
SELECT c.cFirstName,c.cEmail,c .cPhone,c.cMobile FROM CompanyMaster AS c RIGHT OUTER JOIN 联系 ON CompanyMaster .nCompanyId = Contact.nContactIdLEFT OUTER JOIN LeadSourceMaster ON Contact.nLeadSource = LeadSourceMaster.nLeadSourceID
2.在ASP页面中更改排序表达式,如下所示:的SortExpression = c.cFirstName
i am developing one web site in that i have given facility to user for generating grid result dynamically by creating user view.
now my problem i am not able to make sorting of the colums.
i am writing query like this
SELECT Contact.cFirstName as [ FIRST NAME], Contact.cEmail as [ EMAIL ID], Contact.cPhone as [ PHONE NO], Contact.cMobile as [ MOBILE] FROM CompanyMaster RIGHT OUTER JOIN Contact ON CompanyMaster.nCompanyId = Contact.nContactId LEFT OUTER JOIN LeadSourceMaster ON Contact.nLeadSource = LeadSourceMaster.nLeadSourceID
Contact.cFirstName as [ FIRST NAME], Contact.cEmail as [ EMAIL ID], Contact.cPhone as [ PHONE NO], Contact.cMobile as [ MOBILE] fields are dynamic.so i can't create bound fields.
i have made allow sorting true for gridview.if i will sort first column then give error
Cannot find column FIRST NAME.
pl help me to resolve this problem.
try this way to sort in datatable... :)
DataTable dtGetData = new DataTable(); DataView dv = dtGetData.DefaultView; dv.Sort = "ColumnName" + " " + "ASC"; //OR (You can pass it dynamically) dv.Sort = "ColumnName" + " " + "DESC"; DataTable dtGetShipments = new DataTable(); dtGetShipments = dv.ToTable(); //bind this "dtGetShipments" datatable to gridview
For more solution.. :)
sorting problem in asp.net gridview[^]
1.You should change your SQL string similar with the next one:
SELECT c.cFirstName , c.cEmail , c.cPhone , c.cMobile FROM CompanyMaster AS c RIGHT OUTER JOIN Contact ON CompanyMaster.nCompanyId = Contact.nContactId LEFT OUTER JOIN LeadSourceMaster ON Contact.nLeadSource = LeadSourceMaster.nLeadSourceID
2.In the ASP page change the sort expression like this:SortExpression="c.cFirstName"
这篇关于在asp.net gridview中排序问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!